#root,body,html{background-color:#dfecd5;height:100%;margin:0}html{overflow-y:auto}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{-webkit-animation:App-logo-spin 20s linear infinite;animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@-webkit-keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.modal-overlay{align-items:center;background:rgba(0,0,0,.4);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:200}.modal-container{background:#dfecd5;border:none;border-radius:20px;box-shadow:0 4px 20px rgba(0,0,0,.15);box-sizing:border-box;max-height:80vh;max-width:500px;overflow-y:auto;padding:24px 20px;width:calc(100% - 40px)}.modal-header{align-items:center;display:flex;justify-content:center;margin-bottom:20px}.modal-logo-img{height:40px;width:auto}.menu-item{align-items:center;background:#fff;border:none;border-radius:12px;box-sizing:border-box;color:#333;cursor:pointer;display:flex;font-size:16px;justify-content:space-between;margin-bottom:10px;padding:14px 16px;text-align:left;text-decoration:none;width:100%}@media (hover:hover) and (pointer:fine){.menu-item:not(.menu-item--static):hover{background:#f5f5f5}}.menu-item--static{background:#fff;cursor:default}.menu-item-left{align-items:center;display:flex;gap:10px}.menu-emoji{font-size:18px}.menu-chevron{color:#999;font-size:20px}.menu-external{color:#999;font-size:16px}.menu-section-header{color:#333;font-size:18px;font-weight:700;margin:48px 0 12px}.language-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:initial;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%2712%27 height=%278%27 viewBox=%270 0 12 8%27><path fill=%27none%27 stroke=%27%23999%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 d=%27M1 1.5l5 5 5-5%27/></svg>");background-position:100%;background-repeat:no-repeat;background-size:12px 8px;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 18px 0 0;text-align:right}.language-select:focus{outline:none}.modal-footer{color:#666;font-size:16px;margin-top:24px;text-align:center}.modal-footer a{color:#666;text-decoration:underline}.privacy-link{background:none;border:none;color:#888;cursor:pointer;display:block;font-size:12px;margin:12px auto 0;padding:4px 8px;text-decoration:underline}@media (hover:hover) and (pointer:fine){.privacy-link:hover{color:#555}}.subpage-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.back-button{background:none;border:none;color:#333;cursor:pointer;font-size:28px;line-height:1;padding:0}@media (hover:hover) and (pointer:fine){.back-button:hover{color:#000}}.subpage-title{color:#333;font-size:20px;font-weight:700}.about-section-bubble,.subpage-content{color:#555;font-size:15px;line-height:1.6;white-space:pre-wrap}.about-section-bubble{background:#fff;border-radius:12px;padding:16px}.menu-item--feedback{gap:12px}.menu-item--feedback .menu-item-left{flex:1 1;min-width:0}.menu-email{color:#666;font-size:12px;max-width:50%;overflow-wrap:anywhere;text-align:right}@media (max-width:480px){.menu-item--feedback{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr}.menu-item--feedback .menu-email{font-size:14px;justify-self:end;max-width:100%}}.hanja-summary-cards{display:flex;gap:10px;margin:20px -20px 0;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 20px 8px;scroll-padding-inline:20px;scroll-snap-type:x proximity;scrollbar-width:none}.hanja-summary-card{background:#fcfdf9;border-radius:14px;box-shadow:0 2px 6px rgba(0,0,0,.08);box-sizing:border-box;display:flex;flex:0 0 max(120px,calc((100% - (var(--hanja-columns) - 1)*10px)/var(--hanja-columns)));flex-direction:column;gap:8px;justify-content:flex-start;min-width:0;padding:12px 8px;scroll-snap-align:start;text-align:center}.hanja-summary-top{align-items:center;color:#333;display:flex;flex-wrap:wrap;font-size:18.4px;font-weight:700;gap:6px;justify-content:center}.hanja-summary-reading{font-size:inherit;line-height:1.4;overflow-wrap:anywhere}.hanja-summary-sound{color:#ea40c9}.hanja-summary-meaning{color:#555;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.hanja-summary-cards::-webkit-scrollbar{display:none}.hanja-summary-cards.is-dragging{scroll-snap-type:none;-webkit-user-select:none;user-select:none}.app{background-color:#dfecd5;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:600px;min-height:100vh;padding:0 8px 16px 4px}.logo-header{background:#dfecd5;left:0;padding:0 8px 0 4px;position:fixed;right:0;top:0;z-index:101}.logo-header-inner{margin:0 auto;max-width:568px}.header{align-items:center;display:flex;justify-content:space-between;padding:16px 0}.search-overlay{background:linear-gradient(180deg,#dfecd5 0,#dfecd5 calc(100% - 30px),transparent);left:0;padding:6px 8px 30px 4px;position:fixed;right:0;top:68px;-webkit-transform:translateY(0);transform:translateY(0);transition:top .4s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);transition:top .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);transition:top .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1),-webkit-transform .4s cubic-bezier(.4,0,.2,1);z-index:100}.search-overlay--centered{background:transparent;padding-top:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.search-overlay-inner{margin:0 auto;max-width:568px}.search-title{color:#333;font-size:28px;font-weight:400;line-height:1.3;margin:0 0 20px;padding:0;text-align:center}.header-spacer{height:134px}.logo{align-items:center;cursor:pointer;display:flex}.logo-img{height:36px;width:auto}.menu-btn{background:none;border:none;color:#000;cursor:pointer;padding:4px 8px}.menu-btn,.search-container{align-items:center;display:flex}.search-container{gap:8px;position:relative}.search-box{align-items:center;background:#fcfdf9;border:none;border-radius:20px;box-shadow:0 2px 6px rgba(0,0,0,.08);display:flex;flex:1 1;min-width:0;padding:10px 20px}.clear-search-btn{background:#dce2d7;color:#666;flex:0 0 22px;height:22px;margin-left:8px;width:22px}.clear-search-btn,.search-circle-btn{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;justify-content:center;padding:0}.search-circle-btn{background:#fcfdf9;box-shadow:0 2px 6px rgba(0,0,0,.08);color:#333;flex:0 0 40px;height:40px;width:40px}.search-circle-btn:active{-webkit-transform:scale(.95);transform:scale(.95)}.share-feedback{background:#fcfdf9;border-radius:10px;box-shadow:0 2px 6px rgba(0,0,0,.08);color:#555;font-size:12px;padding:6px 10px;position:absolute;right:0;top:calc(100% + 6px)}.search-icon{color:rgba(0,0,0,.8);font-size:18px;margin-right:8px}.search-box input{background:transparent;border:none;flex:1 1;font-size:16px;min-width:0;outline:none;width:100%}.search-box input::-webkit-input-placeholder{color:#999}.search-box input::placeholder{color:#999}.example-chips{display:flex;gap:8px;justify-content:center;margin-top:10px;padding:4px 4px 12px}.example-chip{align-items:center;background:#f2f7ee;border:none;border-radius:16px;color:#333;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:16px;gap:6px;padding:8px 14px}@media (hover:hover) and (pointer:fine){.example-chip:hover{background:#e8efe1}}.example-chip:active{-webkit-transform:scale(.96);transform:scale(.96)}.header-actions{align-items:center;display:flex;gap:8px}.play-btn{align-items:center;background:#ea40c9;border-radius:20px;color:#fff;display:inline-flex;font-size:15px;font-weight:600;padding:8px 16px;text-decoration:none;white-space:nowrap}.play-btn:active{-webkit-transform:scale(.96);transform:scale(.96)}.chip-search-icon{color:rgba(0,0,0,.6);flex-shrink:0}.loading-container{align-items:center;display:flex;flex-direction:column;padding:40px 20px}.loading-chars{display:flex;gap:4px}.loading-char{-webkit-animation:fadeInOut 2s ease-in-out infinite;animation:fadeInOut 2s ease-in-out infinite;font-size:40px;font-weight:700;opacity:0}.char-han{-webkit-animation-delay:0s;animation-delay:0s;color:#ea40c9}.char-ja{-webkit-animation-delay:.5s;animation-delay:.5s;color:#9b30ff}.char-ta{-webkit-animation-delay:1s;animation-delay:1s;color:#4a5fc1}.char-im{-webkit-animation-delay:1.5s;animation-delay:1.5s;color:#6fa8dc}@-webkit-keyframes fadeInOut{0%,to{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}25%,50%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}75%{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}}@keyframes fadeInOut{0%,to{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}25%,50%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}75%{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}}.status{color:#666;padding:20px;text-align:center}.status.error{color:#e74c3c}.results{box-sizing:border-box;gap:20px;margin:0 auto;max-width:568px;padding-top:10px;width:100%}.result-group,.results{display:flex;flex-direction:column}.result-group{gap:16px;min-width:0}.result-card{background:#f0f4e8;border:none;border-radius:20px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:20px}.word-header{margin-bottom:12px}.korean-word{color:#ea40c9;font-size:32px;font-weight:700;margin-right:12px}.hanja-origin{color:#ea40c9;font-size:28px}.definition-section{margin-bottom:16px}.translation-word{color:#333;font-size:18px;font-weight:700;margin-bottom:4px}.sense-item{margin-bottom:16px}.sense-item:last-child{margin-bottom:0}.definition-text{color:#555;font-size:15px;line-height:1.5}.hanja-header{margin-bottom:12px}.hanja-korean{color:#ea40c9;font-size:28px;font-weight:700;margin-right:8px}.hanja-chinese{color:#ea40c9;font-size:24px}.hanja-reading{color:#333;font-size:18px;font-weight:700;margin:0 0 4px}.hanja-definition{color:#555;font-size:15px;line-height:1.5;margin:0 0 12px}.related-words{display:flex;flex-direction:column}.related-word-row{align-items:center;border-left:3px solid #ccc;cursor:pointer;display:flex;justify-content:space-between;padding:5px 0 5px 12px}@media (hover:hover) and (pointer:fine){.related-word-row:hover{background:rgba(0,0,0,.03)}}.related-word-left{align-items:baseline;display:flex;flex:1 1;flex-direction:row;gap:12px;min-width:0}.related-korean{color:#333;flex-shrink:0;font-size:16px;font-weight:500}.related-english{color:#555;flex:1 1;font-size:15px;min-width:0}.arrow{color:#ccc;font-size:24px;margin-right:8px}.page-footer{color:#666;font-size:16px;margin-top:auto;padding:16px 0 8px;text-align:center}.page-footer a{color:#666;text-decoration:underline}@media (max-width:480px){.app{padding:0 16px 12px}.logo-header,.search-overlay{padding-left:16px;padding-right:16px}.search-title{font-size:24px}.search-title-ending{display:block}.logo-text{font-size:24px}.korean-word{font-size:28px}.hanja-origin{font-size:24px}}.game{background-color:#dfecd5;box-sizing:border-box;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:600px;min-height:100vh;padding:0 16px 12px}.game-header{align-items:center;display:grid;grid-template-columns:1fr auto 1fr;padding:16px 0}.game-back{align-items:center;background:none;border:none;color:#333;display:flex;justify-self:start;padding:0 8px 0 0}.game-back,.game-logo{cursor:pointer;height:36px}.game-logo{width:auto}.game-level{align-items:center;color:#333;display:flex;font-size:18px;font-weight:600;height:36px;justify-self:end;line-height:1}.game-round{align-items:stretch;display:flex;flex:1 1;flex-direction:column;text-align:center}.game-space{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:24px}.game-stack{display:grid;margin:28px auto 0;width:min(100%,300px)}.game-card{align-items:stretch;background:#f0f4e8;border-radius:20px;box-shadow:0 2px 8px rgba(0,0,0,.08);box-sizing:border-box;display:flex;flex-direction:column;grid-area:1/1;padding:16px 20px;-webkit-transform-origin:top center;transform-origin:top center;transition:opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.4,0,.2,1);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),-webkit-transform .3s cubic-bezier(.4,0,.2,1)}.game-card--pos0{z-index:3}.game-card--pos1{background:#e9efe0;-webkit-transform:translateY(-14px) scale(.95);transform:translateY(-14px) scale(.95);z-index:2}.game-card--pos1,.game-card--pos2{-webkit-animation:game-card-in .3s ease-out;animation:game-card-in .3s ease-out}.game-card--pos2{background:#e3eada;-webkit-transform:translateY(-28px) scale(.9);transform:translateY(-28px) scale(.9);z-index:1}.game-card--leaving{opacity:0}@-webkit-keyframes game-card-in{0%{opacity:0}to{opacity:1}}@keyframes game-card-in{0%{opacity:0}to{opacity:1}}.game-next{background:#ea40c9;border:none;border-radius:20px;color:#fff;cursor:pointer;font-family:inherit;font-size:18px;padding:12px 40px}.game-next:active{-webkit-transform:scale(.97);transform:scale(.97)}.game-error{color:#e74c3c;padding:40px 20px;text-align:center}.game-levelup{align-items:center;-webkit-animation:game-pop .3s ease-out;animation:game-pop .3s ease-out;background:#dfecd5;color:#ea40c9;display:flex;font-size:40px;font-weight:700;inset:0;justify-content:center;position:fixed;z-index:200}@-webkit-keyframes game-shake{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}20%,60%{-webkit-transform:translateX(-6px);transform:translateX(-6px)}40%,80%{-webkit-transform:translateX(6px);transform:translateX(6px)}}@keyframes game-shake{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}20%,60%{-webkit-transform:translateX(-6px);transform:translateX(-6px)}40%,80%{-webkit-transform:translateX(6px);transform:translateX(6px)}}@-webkit-keyframes game-pop{0%{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes game-pop{0%{opacity:0;-webkit-transform:scale(.8);transform:scale(.8)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.game .loading-container,.game-error{flex:1 1;justify-content:center}.game-half{flex-direction:column;gap:6px;min-height:112px}.game-half,.game-word-korean{align-items:center;display:flex;justify-content:center}.game-word-korean{color:#333;font-size:40px;font-weight:700;height:52px;line-height:1}.game-match{color:#ea40c9}.game-word-built{background:none;border:none;cursor:pointer;font-family:inherit;padding:0}.game-word-built:disabled{cursor:default}.game-blank{color:transparent;position:relative}.game-blank:after{background:#333;border-radius:2px;bottom:-2px;content:"";height:3px;left:0;position:absolute;right:0}.game-word-english{color:#555;font-size:18px;line-height:24px}.game-hanja-box{align-items:center;align-self:stretch;background:#fcfdf9;border-radius:14px;box-shadow:0 2px 6px rgba(0,0,0,.08);box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:8px;justify-content:center;margin-top:24px;min-height:88px;padding:8px}.game-hanja-top{align-items:center;color:#333;display:flex;font-size:22px;font-weight:700;gap:10px;line-height:1}.game-actions{height:64px;margin-top:20px}.game-actions,.game-tokens{align-items:center;display:flex;justify-content:center}.game-tokens{gap:12px;margin-top:24px;min-height:88px}.game-token{background:#fcfdf9;border:none;border-radius:14px;box-shadow:0 2px 6px rgba(0,0,0,.08);color:#333;cursor:pointer;font-family:inherit;font-size:28px;height:60px;width:60px}.game-token:active{-webkit-transform:scale(.95);transform:scale(.95)}.game-token--wrong{-webkit-animation:game-shake .35s;animation:game-shake .35s;background:#e6ebe1;box-shadow:none;color:#bbb;cursor:default}.game .page-footer{color:#666;font-size:16px;margin-top:auto;padding:16px 0 8px;text-align:center}.game .page-footer a{color:#666;text-decoration:underline}.game-hanja-box .game-word-english{font-size:16px;line-height:20px;overflow-wrap:anywhere;width:100%}
/*# sourceMappingURL=main.cd7c6da8.css.map*/