*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:#e8e4e4}@media (min-width: 600px){body{display:flex;align-items:center;justify-content:center;min-height:100dvh}}#root{width:100%;height:100dvh}@media (min-width: 600px){#root{width:100vw;height:100dvh;display:flex;align-items:center;justify-content:center}}button{font-family:inherit}.ob{display:flex;flex-direction:column;width:100%;height:100dvh;background:#fff;font-family:Noto Sans KR,-apple-system,Apple SD Gothic Neo,sans-serif;overflow:hidden}@media (min-width: 600px){.ob{aspect-ratio:390 / 844;height:min(844px,92dvh);width:auto;border-radius:44px;box-shadow:0 24px 80px #00000047,0 0 0 1px #0000000f;overflow:hidden;zoom:.75}}.ob__nav{display:flex;align-items:center;gap:8px;padding:18px 20px 12px;flex-shrink:0}.ob__back-slot{width:32px;flex-shrink:0}.ob__back{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;padding:0;cursor:pointer;border-radius:50%;transition:background .15s}.ob__back:hover{background:#f0f0f0}.ob__back:active{background:#e4e4e4}.ob__progress{display:flex;flex:1;gap:6px}.ob__pill{flex:1;height:8px;border-radius:8px;background:#e0dede;transition:flex .35s ease,background .35s ease}.ob__pill--on{flex:3;background:#8c1515}.ob__pill--past{background:#c8a0a0}.ob__scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:0 20px 20px;scrollbar-width:none;display:flex;flex-direction:column}.ob__scroll::-webkit-scrollbar{display:none}.step{padding-top:12px;flex:1;display:flex;flex-direction:column}.step__h1{font-size:34px;font-weight:900;color:#111;margin:0 0 6px;line-height:1.15;letter-spacing:-.5px}.step__sub{font-size:14px;color:#777;margin:0 0 40px;font-weight:400}.sg{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sg__card{position:relative;border:none;border-radius:18px;overflow:hidden;cursor:pointer;background:none;padding:0;aspect-ratio:1;box-shadow:0 0 0 3px #d0d0d0;transition:box-shadow .15s ease,transform .1s ease}.sg__card:active{transform:scale(.97)}.sg__card--on{box-shadow:0 0 0 3px #8c1515}.sg__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-size:cover;background-position:center}.sg__lbl{position:absolute;bottom:0;left:0;right:0;padding:28px 12px 12px;background:linear-gradient(transparent,#000000b8);color:#fff;font-size:15px;font-weight:700;text-align:left}.fl{display:flex;flex-direction:column;flex:1;justify-content:space-evenly;gap:0}.fl__row{display:flex;align-items:center;gap:12px;background:none;border:none;padding:0;cursor:pointer;text-align:left;width:100%}.fl__fig{width:80px;aspect-ratio:3 / 4;flex-shrink:0}.fl__fig-inner{width:100%;height:100%;border-radius:12px;overflow:hidden}.fl__fig-img{width:100%;height:100%;display:block;object-fit:contain}.fl__info{flex:1;display:flex;flex-direction:column;gap:6px}.fl__chip{display:inline-flex;align-items:center;gap:4px;background:#ebebeb;color:#555;font-size:13px;font-weight:700;padding:5px 13px;border-radius:20px;align-self:flex-start;transition:background .15s,color .15s}.fl__chip--on{background:#8c1515;color:#fff}.fl__sub{font-size:11px;font-weight:400;opacity:.75}.fl__box{background:#f6f6f6;border:2px solid #E2E2E2;border-radius:16px;padding:14px 16px;font-size:13px;color:#555;line-height:1.65;text-align:center;transition:border-color .15s,background .15s}.fl__box--on{border-color:#8c1515;background:#fff5f5;color:#3a0808}.ll{display:flex;flex-direction:column;gap:12px}.ll__item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:18px 20px;border:2px solid #E2E2E2;border-radius:18px;background:#fff;cursor:pointer;text-align:left;width:100%;transition:border-color .15s,background .15s,transform .1s}.ll__item:active{transform:scale(.98)}.ll__item--on{border-color:#8c1515;background:#fff5f5}.ll__name{font-size:16px;font-weight:700;color:#111}.ll__item--on .ll__name{color:#8c1515}.ll__desc{font-size:13px;color:#999;font-weight:400}.wt{display:flex;gap:8px;margin-bottom:20px}.wt__tab{flex:1;height:52px;border:2px solid #E2E2E2;border-radius:14px;background:#f0f0f0;font-size:15px;font-weight:600;color:#999;cursor:pointer;transition:all .15s;font-family:inherit}.wt__tab--on{border-color:#aaa;background:#e4e4e4;color:#111}.wi{display:flex;flex-wrap:wrap;gap:10px}.wi__pill{padding:10px 20px;border-radius:50px;background:#ebebeb;border:none;font-size:14px;font-weight:600;color:#777;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.wi__pill--on{background:#8c1515;color:#fff}.bg{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bg__btn{height:64px;border:2px solid transparent;border-radius:16px;background:#ebebeb;font-size:16px;font-weight:700;color:#444;cursor:pointer;transition:all .15s;font-family:inherit}.bg__btn:active{transform:scale(.97)}.bg__btn--on{border-color:#8c1515;background:#fff5f5;color:#8c1515}.ob__footer{padding:10px 20px 32px;flex-shrink:0}.ob__btn{width:100%;height:56px;border:none;border-radius:16px;color:#fff;font-size:17px;font-weight:700;cursor:pointer;letter-spacing:.2px;transition:opacity .15s,transform .1s;font-family:inherit}.ob__btn:disabled{cursor:not-allowed}.ob__btn:not(:disabled):active{transform:scale(.98);opacity:.88}.bnav{display:flex;background:#fff;border-top:1px solid #EBEBEB;padding:8px 0 max(16px,env(safe-area-inset-bottom));flex-shrink:0}.bnav__tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:6px 4px;border-radius:14px;transition:opacity .15s;color:#aaa;font-family:Noto Sans KR,sans-serif}.bnav__tab--on{background:#8c1515;color:#fff}.bnav__icon{display:flex;align-items:center;justify-content:center}.bnav__label{font-size:10px;font-weight:600;white-space:nowrap}.mp{display:flex;flex-direction:column;width:100%;height:100dvh;background:#fff;font-family:Noto Sans KR,-apple-system,Apple SD Gothic Neo,sans-serif;overflow:hidden}@media (min-width: 600px){.mp{aspect-ratio:390 / 844;height:min(844px,92dvh);width:auto;border-radius:44px;box-shadow:0 24px 80px #00000047,0 0 0 1px #0000000f;overflow:hidden;zoom:.75}}.mp__scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:40px 24px 20px;scrollbar-width:none}.mp__scroll::-webkit-scrollbar{display:none}.mp__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.mp__greeting{font-size:22px;font-weight:400;color:#111;margin:0;line-height:1.35}.mp__greeting--bold{font-weight:900}.mp__bell{position:relative;background:none;border:none;padding:4px;cursor:pointer;margin-top:2px}.mp__bell-dot{position:absolute;top:4px;right:4px;width:8px;height:8px;background:#8c1515;border-radius:50%;border:1.5px solid #fff}.mp__widget{background:#111;border-radius:20px;padding:22px 24px;margin-bottom:36px}.mp__widget-title{font-size:22px;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.3px}.mp__widget-row{font-size:14px;color:#aaa;margin:0 0 4px;font-weight:400}.mp__section-title{font-size:16px;font-weight:700;color:#111;margin:0 0 16px}.mp__product-card{display:flex;gap:16px;border:1.5px solid #E2E2E2;border-radius:18px;padding:16px;margin-bottom:20px}.mp__product-card--loading{height:162px;background:linear-gradient(90deg,#f0f0f0 25%,#e4e4e4,#f0f0f0 75%);background-size:200% 100%;animation:mp-shimmer 1.2s infinite}@keyframes mp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.mp__product-img{width:110px;height:130px;border-radius:12px;background:#f0f0f0;flex-shrink:0;display:flex;align-items:center;justify-content:center}.mp__product-info{flex:1;display:flex;flex-direction:column;gap:4px}.mp__product-name{font-size:15px;font-weight:700;color:#111;margin:0;line-height:1.4}.mp__product-price{font-size:15px;font-weight:900;color:#111;margin:0}.mp__product-brand{font-size:13px;color:#999;margin:0;font-weight:400}.mp__product-desc{font-size:13px;color:#555;margin:8px 0 0;line-height:1.6}.mp__shop-btn{display:block;width:100%;margin:0 0 28px;height:54px;background:#111;color:#fff;border:none;border-radius:16px;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}.mp__shop-btn:active{opacity:.8}.mp__roadmap-card{border:1.5px solid #E2E2E2;border-radius:18px;padding:18px 20px}.mp__roadmap-label{font-size:15px;font-weight:700;color:#111;margin:0 0 12px}.mp__roadmap-dot{color:#8c1515}.mp__roadmap-bar{height:8px;background:#e8e8e8;border-radius:4px;overflow:hidden}.mp__roadmap-fill{height:100%;background:#8c1515;border-radius:4px;transition:width .6s ease}.rp{display:flex;flex-direction:column;width:100%;height:100dvh;background:#fff;font-family:Noto Sans KR,-apple-system,Apple SD Gothic Neo,sans-serif;overflow:hidden}@media (min-width: 600px){.rp{aspect-ratio:390 / 844;height:min(844px,92dvh);width:auto;border-radius:44px;box-shadow:0 24px 80px #00000047,0 0 0 1px #0000000f;overflow:hidden;zoom:.75}}.rp__loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.rp__spinner{width:44px;height:44px;border:4px solid #E8E8E8;border-top-color:#8c1515;border-radius:50%;animation:rp-spin .8s linear infinite}@keyframes rp-spin{to{transform:rotate(360deg)}}.rp__loading-text{font-size:15px;color:#999;font-weight:500;margin:0}.rp__scroll{flex:1;overflow-y:auto;overflow-x:hidden;padding:28px 20px 20px;scrollbar-width:none}.rp__scroll::-webkit-scrollbar{display:none}.rp__title{font-size:26px;font-weight:900;color:#111;margin:0 0 4px;letter-spacing:-.3px}.rp__sub{font-size:14px;color:#999;margin:0 0 32px;font-weight:400}.rp__steps{display:flex;flex-direction:column;gap:28px;margin-bottom:36px}.rp__month-section{display:flex;flex-direction:column;gap:12px}.rp__month-label{font-size:13px;font-weight:700;color:#aaa;margin:0;text-transform:uppercase;letter-spacing:.5px}.rp__month-label--on{color:#8c1515}.rp__card{border:1.5px solid #E2E2E2;border-radius:18px;padding:18px 16px;transition:border-color .15s}.rp__card--on{border-color:#8c1515;border-width:2px}.rp__card-body{flex:1}.rp__when{font-size:13px;color:#999;margin:0 0 4px;font-weight:400}.rp__dot{color:#8c1515}.rp__name{font-size:17px;font-weight:700;color:#111;margin:0 0 6px}.rp__card:not(.rp__card--on) .rp__name{color:#aaa}.rp__heart{font-size:16px}.rp__combo{font-size:13px;color:#999;margin:0;font-style:italic}.rp__divider{border:none;border-top:1px solid #E8E8E8;margin:0 0 28px}.rp__stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:20px}.rp__stat{background:#f4f4f4;border-radius:14px;padding:14px 10px;text-align:center}.rp__stat-value{font-size:15px;font-weight:900;color:#111;margin:0 0 4px}.rp__stat-label{font-size:12px;color:#999;margin:0;font-weight:400}.rp__add-btn{margin-top:10px;padding:6px 16px;border:1.5px solid #8C1515;border-radius:20px;background:none;color:#8c1515;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}.rp__add-btn:disabled{opacity:.5;cursor:not-allowed}.rp__add-btn:not(:disabled):active{background:#8c1515;color:#fff}.rp__card--skeleton{height:100px;border:none;background:linear-gradient(90deg,#f0f0f0 25%,#e4e4e4,#f0f0f0 75%);background-size:200% 100%;animation:rp-shimmer 1.2s infinite}@keyframes rp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rp__save-btn{width:100%;height:54px;background:#111;color:#fff;border:none;border-radius:16px;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}.rp__save-btn:active{opacity:.8}
