:root{--bg: #0d0b09;--neutral: #c7c3bc;--surface: #17130f;--surface-2: #221b15;--surface-3: #2c231b;--text: #f2ebe1;--muted: #9a8f81;--muted-2: #6f665b;--accent: #d7a95a;--accent-soft: #efd9ac;--cta: #b0733f;--cta-press: #9a6234;--hairline: rgba(242, 235, 225, .1);--hairline-strong: rgba(242, 235, 225, .16);--serif: "Playfair Display", Georgia, serif;--sans: "Manrope", system-ui, -apple-system, sans-serif;--col: 430px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--bg)}body{background:var(--bg);font-family:var(--sans);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input{font-family:inherit}img{display:block}#root{max-width:var(--col);margin:0 auto;min-height:100vh;min-height:100dvh;background:var(--bg);position:relative;box-shadow:0 0 1px #0006;overflow-x:hidden}.hdr{position:sticky;top:0;z-index:40;background:#0d0b09eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--hairline)}.hdr-row{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 12px}.hdr-left{display:flex;align-items:center;gap:12px;min-width:0}.wordmark{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:.2px;color:var(--text);line-height:1;padding:0}.hdr-icons{display:flex;align-items:center;gap:4px}.icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:var(--muted);transition:color .15s ease,background .15s ease}.icon-btn:active{background:var(--surface-2)}.icon-btn.active{color:var(--accent)}.iconbtn-back{color:var(--text)}.theme-tabs{display:flex;gap:26px;padding:4px 18px 14px}.theme-tab{font-family:var(--sans);font-size:15px;font-weight:600;color:var(--muted-2);padding-bottom:8px;position:relative;transition:color .18s ease}.theme-tab.active{color:var(--text)}.theme-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--accent)}.rail-block{margin:6px 0 26px}.rail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px 12px}.rail-head-text{min-width:0}.rail-more{flex:0 0 auto;display:flex;align-items:center;gap:1px;color:var(--accent);font-family:var(--sans);font-weight:600;font-size:12.5px;white-space:nowrap}.rail-more:active{opacity:.7}.rail-label{font-family:var(--serif);font-size:23px;font-weight:600;color:var(--text);line-height:1.1}.rail-label-sm{font-size:18px}.rail-tagline{font-family:var(--serif);font-style:italic;font-size:13px;color:var(--muted);margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rail-scroller{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 18px;scrollbar-width:none}.rail-scroller::-webkit-scrollbar{display:none}.rail-card{flex:0 0 auto;width:152px;scroll-snap-align:start}.look{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:14px;overflow:hidden;background:var(--surface-2)}.pressable{transition:transform .13s ease}.pressable:active{transform:scale(.96)}.look-img{width:100%;height:100%;object-fit:cover}.look-img.dimmed{opacity:.55}.look-unavailable{position:absolute;top:8px;left:8px;background:#0d0b09d1;color:var(--muted);font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 8px;border-radius:6px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.look-heart{position:absolute;top:8px;right:8px;width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:#ffffffe6;color:#241d15}.look-heart.pop svg,.hero-heart.pop svg{animation:heartpop .34s ease}@keyframes heartpop{0%{transform:scale(1)}35%{transform:scale(1.4)}60%{transform:scale(.9)}to{transform:scale(1)}}.look-shop{position:absolute;left:0;right:0;bottom:0;padding:24px 12px 9px;background:linear-gradient(to top,#0d0b09e0,#0d0b0900);display:flex;align-items:center;gap:5px;opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}.look-shop.in{opacity:1;transform:translateY(0)}.look-shop-strip{display:flex;align-items:center;gap:5px;color:#fff;font-family:var(--sans);font-weight:700;font-size:11.5px;letter-spacing:.2px;white-space:nowrap;text-shadow:0 1px 4px rgba(0,0,0,.65)}.look-chip{position:absolute;left:8px;bottom:8px}.chip{display:inline-block;font-family:var(--sans);font-weight:700;font-size:10.5px;letter-spacing:.8px;text-transform:uppercase;color:#201812;background:var(--accent);padding:5px 9px;border-radius:6px}.see-all-tile{width:100%;aspect-ratio:3 / 4;border-radius:14px;border:1px solid var(--hairline-strong);background:var(--surface);display:grid;place-items:center;text-align:center;padding:12px}.see-all-tile span{font-family:var(--serif);font-size:16px;color:var(--accent-soft);line-height:1.3}.page-head{padding:18px 18px 8px}.page-title{font-family:var(--serif);font-size:28px;font-weight:600}.page-tagline{font-family:var(--serif);font-style:italic;font-size:14px;color:var(--muted);margin-top:6px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 12px 40px}.grid .look{border-radius:12px}.load-more-wrap{padding:8px 18px 40px;display:flex;justify-content:center}.btn-outline{border:1px solid var(--hairline-strong);color:var(--text);font-weight:600;font-size:14px;padding:13px 26px;border-radius:999px;background:var(--surface)}.need-more{text-align:center;padding:30px 24px 48px;border-top:1px solid var(--hairline);margin-top:8px}.need-more h4{font-family:var(--serif);font-size:20px;margin:0 0 6px}.need-more p{color:var(--muted);font-size:14px;margin:0 0 18px}.need-more .noted{color:var(--accent);font-weight:600;font-size:15px}.btn-accent{background:var(--accent);color:#201812;font-weight:700;font-size:14px;padding:13px 24px;border-radius:999px}.btn-accent:disabled{opacity:.55;cursor:default}.need-more .end-line{color:var(--muted);font-family:var(--serif);font-style:italic;font-size:15px;margin:0 0 18px}.end-link{display:inline-block;margin-top:18px;color:var(--accent);font-family:var(--sans);font-weight:600;font-size:13.5px}.end-link:active{opacity:.7}.detail-hero{position:relative;width:100%;aspect-ratio:3 / 4;background:var(--surface-2)}.detail-hero-img{width:100%;height:100%;object-fit:cover}.hero-overlay-btn{position:absolute;top:14px;width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:#ffffffe6;color:#201812;z-index:2}.hero-back{left:14px}.hero-heart{right:14px}.hero-fade{position:absolute;left:0;right:0;bottom:0;padding:60px 16px 16px;background:linear-gradient(to top,#0d0b09e6,#0d0b0900)}.hero-meta{color:var(--muted);font-size:13.5px;margin-top:8px}.cta-wrap{padding:18px 16px 8px}.btn-cta{width:100%;background:var(--cta);color:#fff;font-weight:700;font-size:17px;padding:18px;border-radius:12px}.btn-cta:active{background:var(--cta-press)}.btn-cta.disabled{opacity:.5}.section-rule{display:flex;align-items:center;gap:14px;padding:20px 14px 4px}.section-rule h3{font-family:var(--serif);font-size:24px;margin:0}.section-rule .line{flex:1;height:1px;background:var(--hairline-strong)}.product{padding:12px 14px 4px}.product-single{max-width:100%;margin:0}.product-thumb{width:100%;max-width:100%;margin:0;aspect-ratio:3 / 4;border-radius:14px;overflow:hidden;background:var(--surface-2)}.product-thumb.single{aspect-ratio:3 / 4}.product-thumb img{width:100%;height:100%;object-fit:cover}.product>.product-thumb{aspect-ratio:auto;height:54vh;max-height:420px;min-height:300px}.product-name{font-size:15px;font-weight:600;line-height:1.3;margin:10px 0 4px;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-price{text-align:center;color:var(--accent);font-family:var(--serif);font-size:18px;font-weight:600}.product.tappable .product-thumb{cursor:pointer}.similar{padding:8px 0}.similar-head{padding:0 14px 2px}.similar-head h4{font-family:var(--serif);font-size:18px;margin:0;color:var(--accent)}.similar-parent{color:var(--muted);font-size:12.5px;margin-top:3px;padding-right:14px}.similar-scroller{display:flex;gap:8px;overflow-x:auto;padding:12px 0 2px 14px;scroll-snap-type:x proximity;scrollbar-width:none}.similar-scroller::-webkit-scrollbar{display:none}.similar-card{flex:0 0 auto;width:158px;scroll-snap-align:start}.similar-card .product-thumb{border-radius:12px;max-width:none;margin:0}.similar-card .s-name{font-size:13px;line-height:1.3;margin:8px 0 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.similar-card .s-price{color:var(--accent);font-weight:700;font-size:14px}.state{padding:60px 30px;text-align:center}.state h3{font-family:var(--serif);font-size:22px;margin:0 0 8px}.state p{color:var(--muted);font-size:14.5px;margin:0 0 22px;line-height:1.4}.shelf-empty{padding:18px;color:var(--muted);font-family:var(--serif);font-style:italic}.img-fallback{width:100%;height:100%;background:var(--surface-3)}.gate{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;text-align:center}.gate-word{font-family:var(--serif);font-size:44px;font-weight:600;margin-bottom:18px}.gate-sub{color:var(--muted);font-size:15px;margin-bottom:32px}.gate-input{width:100%;max-width:280px;background:var(--surface);border:1px solid var(--hairline-strong);color:var(--text);font-size:17px;text-align:center;padding:16px;border-radius:12px;outline:none;letter-spacing:1px}.gate-input:focus{border-color:var(--accent)}.gate-btn{width:100%;max-width:280px;margin-top:14px;background:var(--accent);color:#201812;font-weight:700;font-size:16px;padding:16px;border-radius:12px}.gate-err{color:#e08a6a;font-size:14px;margin-top:16px;min-height:18px}.acct{padding:22px 20px 40px}.acct h1{font-family:var(--serif);font-size:30px;margin:0 0 24px}.acct-hey{font-family:var(--serif);font-size:26px;margin:0 0 18px}.acct-field{width:100%;background:var(--surface);border:1px solid var(--hairline-strong);color:var(--text);font-size:15px;padding:14px;border-radius:10px;outline:none;margin-bottom:22px}.acct-field:focus{border-color:var(--accent)}.acct-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-top:1px solid var(--hairline);font-size:15.5px}.acct-row.link{cursor:pointer}.acct-row .val{color:var(--muted)}.acct-phone{color:var(--muted);font-size:15px;margin-bottom:6px}.acct-action{color:var(--text);font-weight:600}.acct-danger{color:#d97a5a}.acct-confirm{color:var(--muted);font-size:14px;padding:14px 0 4px;line-height:1.4}.acct-confirm-btns{display:flex;gap:10px;padding-top:12px}.btn-danger{background:#7a2f22;color:#ffd9cc;font-weight:700;padding:12px 20px;border-radius:10px;font-size:14px}.btn-ghost{border:1px solid var(--hairline-strong);color:var(--text);padding:12px 20px;border-radius:10px;font-size:14px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease}.sheet{width:100%;max-width:var(--col);background:var(--surface);border-radius:20px 20px 0 0;padding:10px 22px calc(28px + env(safe-area-inset-bottom));animation:slideup .28s cubic-bezier(.16,1,.3,1)}.sheet-grip{width:40px;height:4px;border-radius:999px;background:var(--hairline-strong);margin:6px auto 18px}.sheet h2{font-family:var(--serif);font-size:24px;margin:0 0 8px;line-height:1.15}.sheet p{color:var(--muted);font-size:14px;margin:0 0 20px}.phone-field{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:12px;padding:0 14px;margin-bottom:8px}.phone-prefix{color:var(--muted);font-size:16px}.phone-field input,.otp-input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:17px;padding:16px 6px;width:100%;letter-spacing:1px}.otp-input{text-align:center;letter-spacing:8px;font-size:22px}.otp-wrap{background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:12px;margin-bottom:8px}.sheet-note{color:var(--muted-2);font-size:12.5px;margin:6px 0 18px}.sheet-btn{width:100%;background:var(--accent);color:#201812;font-weight:700;font-size:16px;padding:16px;border-radius:12px;margin-top:8px}.sheet-btn.disabled{opacity:.5}.sheet-err{color:#e08a6a;font-size:13.5px;margin:12px 0 0;min-height:16px}.sheet-resend{display:block;margin:16px auto 0;color:var(--accent);font-size:14px;font-weight:600}.sheet-resend.disabled{color:var(--muted-2)}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slideup{0%{transform:translateY(100%)}to{transform:translateY(0)}}.fadein{animation:fade .35s ease}
