@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Noto+Sans+JP:wght@300;400;500;600;700&display=swap");:root{--fd:"DM Serif Display",serif;--fg:#2a2420;--bg:#f5f0ea;--accent:#c8956c;--muted:#a09080;--card:#fff;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--card-shadow:0 2px 12px rgba(42,36,32,.05);--card-shadow-hover:0 8px 24px rgba(42,36,32,.1)}*{box-sizing:border-box;margin:0;padding:0}body,html{overflow-x:hidden;width:100%}body{font-family:Noto Sans JP,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}::-webkit-scrollbar{width:0;height:0}[role=button],a,button,input,label,select,summary,textarea{touch-action:manipulation;-webkit-tap-highlight-color:transparent}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes cardIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}button:active{transform:scale(.97)}.card-enter{animation:cardIn .42s var(--ease-out) both}.mm-card:first-child{animation-delay:.02s}.mm-card:nth-child(2){animation-delay:.06s}.mm-card:nth-child(3){animation-delay:.1s}.mm-card:nth-child(4){animation-delay:.14s}.mm-card:nth-child(5){animation-delay:.18s}.mm-card:nth-child(6){animation-delay:.22s}.mm-card:nth-child(n+7){animation-delay:.26s}.mm-card{border:1px solid hsla(27,46%,60%,.08);box-shadow:var(--card-shadow);transition:transform .28s var(--ease-out),box-shadow .28s var(--ease-out);will-change:transform}@media (hover:hover){.mm-card:hover{transform:translateY(-2px);box-shadow:var(--card-shadow-hover)}.mm-card:hover .mm-thumb{transform:scale(1.04)}}.mm-card:active{transform:scale(.985)}.mm-thumb{transition:transform .4s var(--ease-out)}.mm-thumb-emoji{animation:floatEmoji 4s ease-in-out infinite;filter:saturate(.9)}@keyframes floatEmoji{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes panelIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tab-panel{animation:panelIn .34s var(--ease-out) both}.mm-tab{transition:background .28s var(--ease-out),color .2s var(--ease-out),box-shadow .28s var(--ease-out)}@keyframes starPop{0%{transform:scale(1)}45%{transform:scale(1.45)}to{transform:scale(1)}}.mm-star{transition:transform .22s var(--ease-spring),color .25s var(--ease-out)}.mm-star:active{transform:scale(1.4)}@media (hover:hover){.mm-star:hover{transform:scale(1.18)}}.mm-toggle{transition:background .25s var(--ease-out),color .25s var(--ease-out),border-color .25s var(--ease-out),transform .18s var(--ease-spring)}.mm-toggle:active{transform:scale(.92)}@keyframes diceWiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-18deg)}75%{transform:rotate(18deg)}}.mm-random{transition:background .25s var(--ease-out),border-color .25s var(--ease-out),transform .18s var(--ease-spring)}.mm-random:active{transform:scale(.98)}.mm-dice{display:inline-block}@media (hover:hover){.mm-random:hover{background:hsla(27,46%,60%,.1);border-color:hsla(27,46%,60%,.5)}.mm-random:hover .mm-dice{animation:diceWiggle .55s var(--ease-out)}}.mm-bar{transition:width .7s var(--ease-out),height .7s var(--ease-out)}@keyframes fabIn{0%{opacity:0;transform:scale(0) rotate(-40deg)}to{opacity:1;transform:scale(1) rotate(0)}}.mm-fab{box-shadow:0 4px 16px rgba(42,36,32,.25);animation:fabIn .5s var(--ease-spring) both;transition:transform .22s var(--ease-spring),box-shadow .25s var(--ease-out)}@media (hover:hover){.mm-fab:hover{transform:scale(1.08) rotate(-6deg);box-shadow:0 8px 24px rgba(42,36,32,.35)}}.mm-fab:active{transform:scale(.92)}.mm-cta{transition:transform .18s var(--ease-spring),box-shadow .25s var(--ease-out)}@media (hover:hover){.mm-cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px hsla(27,46%,60%,.45)}}.mm-cta:active{transform:scale(.96)}@keyframes heroPop{0%{opacity:0;transform:scale(.4) translateY(10px)}60%{opacity:1;transform:scale(1.12) translateY(0)}to{transform:scale(1)}}.mm-hero-icon{animation:heroPop .6s var(--ease-spring) both}.mm-skel{animation:cardIn .4s var(--ease-out) both}.mm-map-card{position:absolute;left:8px;right:8px;bottom:12px}@media (max-width:640px){.mm-map-card{position:fixed;left:0;right:0;margin:0 12px;bottom:calc(env(safe-area-inset-bottom, 0px) + 14px);z-index:50}}@media (prefers-reduced-motion:reduce){*,.card-enter,.mm-dice,.mm-thumb-emoji,.tab-panel{animation:none!important;transition:none!important}}