:root{--c-bg: #FFF8EE;--c-card: #FFFFFF;--c-border: #FFE9C7;--c-text: #1E2A5A;--c-sub: #5A6BAA;--c-muted: #6B6257;--c-orange: #FFA94D;--c-orange-light: #FFF1DB;--c-yellow: #FFD84D;--c-yellow-light: #FFF9E0;--c-blue: #2F6BFF;--c-blue-light: #E5EDFF;--c-green: #6BCB77;--c-green-light: #E5F5E8;--c-pink: #FF9DB0;--c-pink-light: #FFE9EE;--c-navy: #1E2A5A;--shadow-sm: 0 1px 3px rgba(30, 42, 90, .06);--shadow-md: 0 4px 12px rgba(30, 42, 90, .08);--shadow-lg: 0 8px 24px rgba(30, 42, 90, .1);--r-sm: 10px;--r-md: 14px;--r-lg: 18px;--r-xl: 22px;--r-pill: 999px;--ease-out: cubic-bezier(.22, .68, .32, 1);--spring: cubic-bezier(.34, 1.56, .4, 1);--spring-big: cubic-bezier(.34, 1.8, .36, 1);--rev: .6s}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;padding:0;background:var(--c-bg);color:var(--c-text);font-family:Pretendard,-apple-system,system-ui,sans-serif;font-size:14px;line-height:1.5;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;background:radial-gradient(ellipse 80% 60% at 0% 0%,rgba(255,216,77,.28),transparent 50%),radial-gradient(ellipse 80% 60% at 100% 0%,rgba(255,169,77,.24),transparent 50%),var(--c-bg);background-attachment:fixed}.font-display{font-family:Jua,Gowun Dodum,Pretendard,sans-serif;letter-spacing:-.02em}.font-cute{font-family:Gowun Dodum,Pretendard,sans-serif}.scroll-hide::-webkit-scrollbar{display:none}.scroll-hide{-ms-overflow-style:none;scrollbar-width:none}button,input,textarea{font-family:inherit;font-size:inherit;letter-spacing:inherit}@keyframes characterPop{0%{opacity:0;transform:scale(.6) translateY(8px) rotate(-6deg)}60%{opacity:1;transform:scale(1.08) translateY(-4px) rotate(2deg)}80%{transform:scale(.98) translateY(0) rotate(-1deg)}to{opacity:1;transform:scale(1) translateY(0) rotate(0)}}@keyframes characterIdle{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(-1.5deg)}50%{transform:translateY(-5px) rotate(0)}75%{transform:translateY(-3px) rotate(1.5deg)}}.character-pop{animation:characterPop .6s cubic-bezier(.34,1.56,.64,1),characterIdle 4s ease-in-out .6s infinite;transform-origin:center bottom}.character-pop:hover{animation:characterIdle 1.5s ease-in-out infinite;cursor:pointer}.character-name{display:inline-block;background:#461e0066;padding:1px 10px;border-radius:999px;font-weight:800;letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{transform:scale(.92);opacity:0}60%{transform:scale(1.03);opacity:1}to{transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.animate-fade-in{animation:fadeInUp .4s ease-out}.animate-pop{animation:pop .3s cubic-bezier(.34,1.56,.64,1)}.animate-float{animation:float 3s ease-in-out infinite}.hover-lift{transition:transform .18s ease,box-shadow .18s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hover-wiggle:hover{animation:wiggle .5s ease-in-out}.reveal{opacity:0;transform:translateY(20px) scale(.98);filter:blur(3px);will-change:opacity,transform,filter}.reveal.is-shown{animation:revealIn var(--rev) var(--spring-big) forwards}@keyframes revealIn{to{opacity:1;transform:none;filter:blur(0)}}@keyframes ringPop{0%{transform:scale(1)}40%{transform:scale(1.13)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;filter:none;animation:none}}.kakao-marker-card{font-family:Pretendard,sans-serif!important}.dh-more-toggle{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:44px;margin-top:10px;padding:10px 16px;border:1.5px solid #E8DFCF;border-radius:999px;background:#fffdf9;color:#4a5568;font-size:13px;font-weight:800;letter-spacing:-.2px;cursor:pointer;box-shadow:0 1px 3px #1e2a5a0f;transition:background .15s,border-color .15s,transform .1s}.dh-more-toggle:hover{background:#fff1db;border-color:#ffe9c7}.dh-more-toggle:active{transform:scale(.98);background:#ffeac9}.dh-more-toggle:focus-visible{outline:2px solid #F26C36;outline-offset:2px}.dh-more-toggle-icon{font-size:10px;line-height:1;color:#b34700}.gift-sk-box{background:linear-gradient(90deg,#f1e9dd 25%,#faf4ea,#f1e9dd 75%);background-size:200% 100%;animation:gift-sk-shimmer 1.4s ease-in-out infinite}@keyframes gift-sk-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.gift-sk-box{animation:none}}.num{font-variant-numeric:tabular-nums}.dh-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid #FFE9C7;padding-bottom:env(safe-area-inset-bottom,0px);box-shadow:0 -2px 12px #ffa94d24}.dh-tabbar-inner{max-width:800px;margin:0 auto;display:flex}.dh-tabbar button.dh-tab{flex:1;min-height:56px;min-width:44px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:transparent;cursor:pointer;padding:8px 2px 6px;color:#6b6257;font-size:11px;font-weight:500;font-family:inherit;letter-spacing:-.01em;line-height:1}.dh-tabbar button.dh-tab[aria-selected=true]{color:#b34700;font-weight:700}.dh-tabbar button.dh-tab[aria-selected=true] svg{color:#ff8a2d}.dh-tabbar button.dh-tab[aria-selected=true]:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:28px;height:3px;border-radius:0 0 3px 3px;background:linear-gradient(90deg,#ffd84d,#ffa94d)}.dh-tabbar button.dh-tab:focus-visible{outline:2px solid #F26C36;outline-offset:-2px;border-radius:10px}.dh-home-rail{display:flex;gap:10px;overflow-x:auto;padding:2px 28px 8px 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 22px),transparent 100%)}.dh-home-rail::-webkit-scrollbar{display:none}.dh-home-sk{border-radius:12px}@media (hover: hover){.dh-home-card:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 4px 12px #1e2a5a14}}.dh-home-card{transition:transform .22s var(--spring),box-shadow .18s cubic-bezier(.2,0,.2,1)}.dh-home-card:active{transform:scale(.97)}@media (prefers-reduced-motion: reduce){.dh-home-card{transition:none}.dh-home-card:active{transform:none}}.dh-home-stream .seg{display:inline}.dh-home-stream .caret{display:inline-block;width:8px;height:20px;vertical-align:-2px;margin-left:2px;border-radius:2px;background:#f26c36;animation:dhHomeBlink 1s steps(2) infinite}@keyframes dhHomeBlink{0%,50%{opacity:1}50.01%,to{opacity:0}}.dh-home-stream .caret.done{display:none}@media (prefers-reduced-motion: reduce){.dh-home-stream .seg{filter:none}.dh-home-stream .caret{animation:none;opacity:.9}.dh-home-stream .caret.done{display:none}}.dh-sheet-overlay{animation:dh-sheet-fade .16s cubic-bezier(.2,0,.2,1)}.dh-sheet-panel{animation:dh-sheet-up .16s cubic-bezier(.2,0,.2,1)}@keyframes dh-sheet-fade{0%{opacity:0}to{opacity:1}}@keyframes dh-sheet-up{0%{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.dh-sheet-overlay,.dh-sheet-panel{animation:none}}.dh-cmodal-overlay{animation:dh-sheet-fade .14s cubic-bezier(.2,0,.2,1)}.dh-cmodal-panel{animation:dh-cmodal-pop .2s cubic-bezier(.2,.7,.3,1)}@keyframes dh-cmodal-pop{0%{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.dh-cmodal-overlay{animation:dh-sheet-fade .12s linear}.dh-cmodal-panel{animation:none}}.dh-persona-swap{animation:dh-persona-fade .26s var(--ease-out) both}@keyframes dh-persona-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.dh-dock-hint{animation:dh-dock-hint-in .22s var(--spring) both}@keyframes dh-dock-hint-in{0%{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%)}}.dh-map-plane{will-change:transform}.dh-map-plane.in{animation:dh-map-tilt-in .64s var(--ease-out) both}@keyframes dh-map-tilt-in{0%{opacity:0}to{opacity:1}}.dh-prov{will-change:opacity}.dh-prov.paint{animation:dh-prov-paint .48s var(--ease-out) both;animation-delay:calc(var(--dh-p, 0) * 12ms)}@keyframes dh-prov-paint{0%{opacity:.15}to{opacity:1}}.dh-pin{transition:none}.dh-haru{will-change:transform}@media (prefers-reduced-motion: reduce){.dh-persona-swap,.dh-dock-hint{animation:none}.dh-map-plane.in,.dh-prov.paint{animation:none;opacity:1}}html[data-ait=toss] .ait-self-back,html[data-ait=sandbox] .ait-self-back{display:none!important}html[data-ait] .tabbar-safe{padding-bottom:max(env(safe-area-inset-bottom,0px),var(--ait-safe-bottom, 0px))}
