@keyframes spin{to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes floatDrift{0%,to{transform:translate(0,0) rotate(0deg) scale(1)}50%{transform:translate(-20px,-40px) rotate(15deg) scale(1.05)}}@keyframes floatDriftDrink{0%,to{transform:translate(0,0) rotate(0deg) scale(1)}50%{transform:translate(15px,-25px) rotate(10deg) scale(1.05)}}:root{--bg-deep:#FFFDF6;--text-main:#121212;--text-sub:#444444;--primary-color:#FFD166;--accent-color:#EF476F;--surface-color:#FCFDFD;--border-color:#121212;--font-main:'NanumSquare Neo', sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-text-size-adjust:100%}html{min-height:100vh}.app-surface,body{min-height:100vh;height:auto;overflow-x:clip}body,html{background-color:var(--bg-deep)}body{margin:0;padding:0;overflow-y:auto;-webkit-overflow-scrolling:touch;color:var(--text-main);font-family:var(--font-main);line-height:1.6}@media (min-width:481px){body{align-items:center;justify-content:center;display:flex;overflow:hidden;background:#f0ede4}}@media (max-width:480px){body.screen-intro .app-surface.screen-intro{flex:1 1 auto!important}}.app-surface{width:100%;max-width:none;padding:0 24px;padding-bottom:env(safe-area-inset-bottom);position:relative;background:var(--bg-deep)}@media (min-width:481px){body,html{background:#f0ede4}body{height:100vh;overflow:hidden}.app-surface{max-width:none!important;width:100%!important;height:100vh!important;min-height:100vh!important;margin:0!important;background:var(--bg-deep);border-radius:0;border:1px solid rgba(0,0,0,.08);overflow-y:auto;overflow-x:clip;box-shadow:0 30px 60px rgba(0,0,0,.1);display:flex;flex-direction:column;position:relative;-webkit-mask-image:none;mask-image:none}.app-surface::-webkit-scrollbar{display:none}}.warning-card{background:var(--surface-color);border:2px solid var(--border-color);border-radius:20px;padding:24px 20px;box-shadow:4px 4px 0 var(--border-color);text-align:center;position:relative;overflow:hidden;margin-bottom:20px}.main-title{font-size:1.6rem;font-weight:800;text-align:center;margin-top:5px;margin-bottom:12px;line-height:1.3;word-break:keep-all;text-wrap:balance}#wallet-balance-container,.memphis-btn{border:2px solid var(--border-color);border-radius:12px}.memphis-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:16px;background:var(--primary-color);color:var(--text-main);font-size:1.05rem;font-weight:800;cursor:pointer;transition:transform .1s,box-shadow .1s;margin-bottom:16px;text-decoration:none;font-family:inherit;position:relative;box-shadow:4px 4px 0 var(--border-color);user-select:none;-webkit-user-select:none}.memphis-btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--border-color)}.memphis-btn.secondary,.option-btn{background:#fff}.option-btn{text-align:left;justify-content:flex-start;line-height:1.4;color:var(--text-main);font-weight:700;word-break:keep-all;padding:14px 12px;letter-spacing:-.03em}#wallet-balance-container{background:#fff;padding:14px;font-size:1.2rem;font-weight:900;text-align:center;margin-bottom:20px;box-shadow:3px 3px 0 var(--border-color);transition:background-color .3s,border-color .3s}#wallet-balance-container.shake{animation:shake .4s ease-in-out;background-color:#ffe5e9;border-color:var(--accent-color)}#wallet-balance-container.pulse{animation:pulse .4s ease-in-out;background-color:#e2fcef}.wallet-icon{margin-right:4px}.final-balance-box{border:2px solid var(--border-color);border-radius:12px;padding:16px;background:#fff;margin-bottom:20px;text-align:center;box-shadow:4px 4px 0 var(--border-color)}.final-balance-label{font-size:.9rem;color:#666;font-weight:700;display:block;margin-bottom:4px}#final-balance-value{font-size:1.75rem;font-weight:900;color:var(--accent-color)}.app-surface .footer{margin-top:0!important;padding-bottom:20px;opacity:.7}#intro.screen,#loading.screen,#quiz.screen{padding-top:5vh;flex:1;flex-direction:column;justify-content:flex-start;align-items:center}#loading.screen,#quiz.screen{padding-top:8vh;justify-content:center}#loading.screen{padding-top:5vh}#result.screen{flex:0 0 auto}#result.screen .warning-card{margin-bottom:8px}@media (min-width:481px){#intro.screen.active,#loading.screen.active,#quiz.screen.active{padding-top:24px;padding-bottom:24px;flex:1 1 auto!important;flex-direction:column;justify-content:center}.app-surface .footer{flex-shrink:0;padding-top:20px;padding-bottom:30px}#result.screen{padding-top:24px;padding-bottom:24px;flex:0 0 auto}.app-surface.screen-result .footer{position:static;margin-top:0!important;padding-bottom:30px}.app-surface.screen-result .warning-card{margin-bottom:0}.warning-card{padding:24px;margin-bottom:15px}.main-title{font-size:1.9rem;margin-bottom:15px}}.result-details{width:100%;margin-bottom:24px}.detail-box{background:var(--bg-deep);border-radius:16px;padding:20px;margin-bottom:16px;text-align:left;border:2px solid var(--border-color);box-shadow:3px 3px 0 var(--border-color)}.detail-box.warning{background:#fff5f6;border-color:var(--accent-color);box-shadow:3px 3px 0 var(--accent-color)}.box-title{font-size:1.1rem;font-weight:800;margin-bottom:10px;color:var(--text-main);display:flex;align-items:center}.detail-box.warning .box-title{color:var(--accent-color)}.box-desc{font-size:.95rem;color:var(--text-sub);line-height:1.5;margin:0;word-break:keep-all;text-wrap:pretty}.compatibility-container{display:flex;gap:12px;width:100%;margin-top:24px}.compat-card{flex:1;background:#fff;border-radius:16px;padding:16px 12px;text-align:center;border:2px solid var(--border-color);box-shadow:3px 3px 0 var(--border-color)}.compat-card.best{border-color:#2ec4b6;box-shadow:3px 3px 0#2ec4b6;background:#f4fdfb}.compat-card.worst{border-color:var(--accent-color);box-shadow:3px 3px 0 var(--accent-color);background:#fff5f6}.compat-label{display:block;font-size:.85rem;font-weight:800;margin-bottom:10px;color:#666}.compat-card.best .compat-label{color:#2ec4b6}.compat-card.worst .compat-label{color:var(--accent-color)}.compat-char{font-size:1.15rem;font-weight:800;color:var(--text-main);margin-bottom:8px;word-break:keep-all}.compat-desc{font-size:.8rem;color:var(--text-sub);line-height:1.4;margin:0;word-break:keep-all;text-wrap:balance}.result-actions{margin-top:24px;padding-top:10px;border-top:1px dashed var(--border-color);width:100%}.result-actions #sns-share-container{width:100%;margin:0 0 30px}.result-actions #sns-share-container .sns-share-panel{background:0 0!important;border:0!important;padding:0!important;box-shadow:none!important;margin:0!important}.info-content,.result-actions .secondary-btn{background:#fff;border:2px solid var(--border-color);border-radius:12px}.result-actions .secondary-btn{margin-top:32px;width:100%;min-height:56px;color:var(--text-main);font-size:1.05rem;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-family:inherit;box-shadow:4px 4px 0 var(--border-color)}.result-actions .secondary-btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--border-color)}#info-toggle-btn,.result-actions .tertiary-btn{color:#666;font-size:.95rem;text-decoration:underline}.result-actions .tertiary-btn{display:flex;align-items:center;justify-content:center;width:100%;margin-top:16px;padding:12px 0;text-underline-offset:4px;font-weight:700;transition:all .2s}.result-actions .tertiary-btn:hover{color:var(--text-main)}#info-toggle-btn{cursor:pointer;transition:color .3s;display:inline-block;margin:10px 0 0}#info-toggle-btn:hover{color:var(--accent-color)}.info-content{display:none;padding:18px;margin-top:15px;text-align:left;font-size:.9rem;color:var(--text-sub);line-height:1.5;animation:fadeIn .3s ease-out;box-shadow:3px 3px 0 var(--border-color)}.info-content:not([hidden]){display:block}#emoji-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}@media (min-width:481px){#emoji-container{width:480px;left:50%;transform:translateX(-50%)}}.floating-emoji{top:0}body.is-capturing #result{padding:15px 0!important;background-color:var(--bg-deep)!important;border-radius:0!important}body.is-capturing .warning-card{border-radius:20px!important;box-shadow:4px 4px 0 var(--border-color)!important;margin:0!important}body.screen-result #result.screen,body.screen-result #result.screen.active{padding-bottom:8px!important}body.screen-result .app-surface{margin:0 auto!important;padding-left:16px!important;padding-right:16px!important}body.screen-result .app-surface .footer{margin-top:4px!important;padding:16px;margin-bottom:0!important}body.screen-result .app-surface .warning-card{padding:20px 16px!important}.app-surface{display:flex;flex-direction:column}.screen-spacer{display:none;flex:1 1 0;min-height:0}body.screen-intro .screen-spacer,body.screen-loading .screen-spacer,body.screen-quiz .screen-spacer{display:block}body.screen-intro .screen-spacer{max-height:none}body.screen-quiz .screen-spacer{max-height:120px}.footer{flex:0 0 auto}#loading.active,#quiz.active{display:flex!important;flex-direction:column}#loading.active{align-items:center}body.screen-loading #footer-links,body.screen-quiz #footer-links{display:none!important}body.screen-loading #main-footer,body.screen-quiz #main-footer{padding:16px}.screen{flex:0 0 auto!important}#intro.screen,#loading.screen,#quiz.screen,#result.screen{padding-top:0!important;padding-bottom:0!important;margin-top:0!important}#loading.screen,#quiz.screen{min-height:auto!important}.screen>:first-child{margin-top:0!important}.screen>:last-child{margin-bottom:0!important}body.screen-loading .app-surface,body.screen-quiz .app-surface{min-height:0}body.screen-loading .screen-spacer--bottom,body.screen-loading .screen-spacer--top,body.screen-quiz .screen-spacer--bottom,body.screen-quiz .screen-spacer--top{flex:1 1 0;min-height:0;max-height:none}.legal-links{display:flex;flex-direction:column;gap:5px;margin:0 0 14px;padding:0;overflow-x:visible;line-height:1.3}.legal-links,.legal-links a,.legal-links-row{align-items:center;justify-content:center}.legal-links-row{display:flex;flex-wrap:nowrap;gap:2px}.legal-links a{position:relative;display:inline-flex;flex-shrink:0;min-height:22px;padding:2px 7px;line-height:1.3;white-space:nowrap}.legal-links-row a:not(:last-child)::after{content:"";position:absolute;top:50%;right:0;width:1px;height:10px;transform:translateY(-50%);background:rgba(0,0,0,.1)}.page-shell{width:min(100%,500px);min-height:100vh;min-height:100svh;margin:0 auto;display:flex;flex-direction:column;background:var(--bg-deep)}.app-surface{flex:1 1 auto;min-height:0}@media (min-width:481px){body{display:block!important;align-items:stretch!important;justify-content:flex-start!important;height:auto!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:auto!important}body.screen-intro .app-surface.screen-intro,body.screen-loading .app-surface.screen-loading,body.screen-quiz .app-surface.screen-quiz,body.screen-result .app-surface.screen-result{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important;overflow-x:hidden!important;overflow-y:visible!important;padding-bottom:24px!important}body.screen-intro .screen-spacer--bottom,body.screen-intro .screen-spacer--top,body.screen-loading .screen-spacer--bottom,body.screen-loading .screen-spacer--top,body.screen-quiz .screen-spacer--bottom,body.screen-quiz .screen-spacer--top{display:block!important;flex:1 1 0!important;min-height:0!important;max-height:none!important}body.screen-intro .screen-spacer--bottom,body.screen-loading .screen-spacer--bottom,body.screen-quiz .screen-spacer--bottom{flex-shrink:0!important}}.floating-emoji{position:absolute;pointer-events:none;opacity:.25;filter:blur(.3px);z-index:10;animation:floatDriftDrink 9s ease-in-out infinite alternate}.res-keywords{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:20px}.res-keywords span{background:var(--bg-deep);border:2px solid var(--border-color);border-radius:20px;padding:6px 12px;font-size:.85rem;font-weight:800;color:var(--text-main);box-shadow:2px 2px 0 var(--border-color)}