:root{--bg: #14102a;--panel: rgba(22, 17, 44, .92);--card: #221a44;--text: #f3f0ff;--muted: #b9b2d8;--accent: #9b59e0;--accent2: #f3c648;--ok: #3ecf8e;--bad: #ff6b6b;--radius: 18px;--ease-quart: cubic-bezier(.25, 1, .5, 1);--ease-quint: cubic-bezier(.22, 1, .36, 1);--ease-expo: cubic-bezier(.16, 1, .3, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .32s;--font-vn: "Be Vietnam Pro", "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;--font-kr: "Noto Sans KR", "Apple SD Gothic Neo", "Be Vietnam Pro", sans-serif}@font-face{font-family:Be Vietnam Pro;src:url(/fonts/BeVietnamPro-Full.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Noto Sans KR;src:url(/fonts/NotoSansKR-900.woff2) format("woff2");font-weight:900;font-display:swap}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}html,body{margin:0;height:100%}body{background:#fffbf7;color:var(--text);font-family:var(--font-vn)}body.player-open{overflow:hidden;background:var(--bg)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}#app{min-height:100vh}.btn{display:inline-block;background:var(--accent);color:#fff;border-radius:999px;padding:12px 26px;font-weight:700;border:2px solid transparent;text-align:center}.btn:disabled{opacity:.4;cursor:default}.btn.ghost{background:transparent;border-color:#ffffff59}.btn.small{padding:7px 16px;font-size:14px}.btn.danger{border-color:var(--bad);color:var(--bad)}.vip-badge{display:inline-block;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;border-radius:6px;padding:1px 8px;font-size:12px;font-weight:800;vertical-align:middle}.muted{color:var(--muted)}.loading-page{display:grid;place-items:center;min-height:60vh;color:var(--muted)}.lock-card,.acc-card{max-width:420px;margin:12vh auto;background:var(--card);border-radius:var(--radius);padding:2rem;text-align:center;display:flex;flex-direction:column;gap:.9rem}.site-head{display:flex;align-items:center;gap:12px;max-width:1060px;margin:0 auto;padding:1.4rem 1rem 0;flex-wrap:wrap}.site-head h1{font-size:1.5rem;margin:0;flex:1}.site-head nav{display:flex;gap:8px;align-items:center}.site-head .who{color:var(--muted);margin-right:4px}.site-sub{max-width:1060px;margin:.4rem auto 1rem;padding:0 1rem;color:var(--muted)}.rm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;max-width:1060px;margin:0 auto 3rem;padding:0 1rem}.rm-card{background:var(--card);border-radius:var(--radius);padding:1rem 1.1rem;min-height:128px;display:flex;flex-direction:column;gap:4px;border:1.5px solid transparent;transition:transform .15s,border-color .15s}.rm-card:hover{transform:translateY(-3px);border-color:var(--accent)}.rm-card.done{border-color:#3ecf8e99}.rm-card.soon{opacity:.45;pointer-events:none}.rm-ord{font-size:13px;color:var(--accent2);font-weight:700}.rm-ko{font-size:26px;font-weight:900}.rm-title{font-weight:600}.rm-meta{margin-top:auto;font-size:13px;color:var(--muted)}.stage-wrap{position:fixed;inset:0;background:var(--bg);overflow:hidden;z-index:10}.stage{position:absolute;top:0;left:0;width:1920px;height:1080px;transform-origin:top left;background:#1a1434;overflow:hidden}.stage-wrap.portrait:after{content:"Xoay ngang màn hình để xem đẹp nhất ⟳";position:fixed;left:50%;bottom:18px;transform:translate(-50%);background:#000000bf;padding:10px 18px;border-radius:999px;font-size:14px;z-index:60;pointer-events:none;white-space:nowrap}.scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scene-scrim{position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(to bottom,#0a071800 38%,#0a071880 72%,#0a0718c7)}.char,.npc-fig{position:absolute;bottom:0;height:1040px;width:auto;transform-origin:bottom center;filter:drop-shadow(0 18px 26px rgba(0,0,0,.4));transition:filter .35s,opacity .35s,transform .35s;animation:idle 5s ease-in-out infinite;z-index:2}.char.left{left:90px}.char.right{right:90px;animation-delay:2.5s}.npc-fig{left:120px;height:1000px}.char.dim{filter:brightness(.4) saturate(.5) blur(.5px);opacity:.8}.char.hidden,.npc-fig.hidden{opacity:0;pointer-events:none}@keyframes idle{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(.4deg)}}.topbar{position:absolute;top:24px;left:36px;right:36px;display:flex;align-items:center;gap:14px;z-index:20}.tb-btn{min-width:64px;height:64px;border-radius:16px;background:#00000073;color:#fff;font-size:30px;display:grid;place-items:center;padding:0 12px}.tb-btn.off{opacity:.45;text-decoration:line-through}.tb-title{font-size:30px;font-weight:800;text-shadow:0 2px 8px rgba(0,0,0,.6)}.tb-spacer{flex:1}.ctrlbar{position:absolute;left:36px;right:36px;bottom:24px;display:flex;align-items:center;gap:14px;z-index:20}.ctr-label{font-size:26px;color:var(--muted);min-width:170px}.ctr-track{flex:1;height:8px;border-radius:4px;background:#ffffff26}.ctr-fill{height:100%;width:0;border-radius:4px;background:var(--accent);transition:width .3s}.phase-root,.node-root{position:absolute;inset:0;z-index:10}.anim-in>*{animation:rise .45s ease both}@keyframes rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}.preload{position:absolute;inset:0;display:grid;place-content:center;gap:16px;text-align:center;font-size:30px}.preload .bar{width:560px;height:14px;border-radius:7px;background:#ffffff1f}.preload .fill{height:100%;border-radius:7px;background:var(--accent);transition:width .2s}.hook-card{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:10px;background:radial-gradient(ellipse at center,rgba(155,89,224,.25),transparent 70%)}.hk-series{font-size:34px;letter-spacing:4px;color:var(--accent2);font-weight:700;text-transform:uppercase}.hk-ko{font-size:140px;margin:0;font-weight:900;text-shadow:0 10px 40px rgba(0,0,0,.5)}.hk-vi{font-size:44px;color:var(--muted)}.vocab-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--panel);border:1.5px solid rgba(255,255,255,.18);border-radius:36px;padding:56px 90px;text-align:center;min-width:760px}.vc-tag{font-size:28px;color:var(--accent2);font-weight:700;margin:0 0 6px}.vc-ko{font-size:110px;margin:0;font-weight:900}.vc-rom{font-size:36px;color:var(--muted);margin:8px 0 0}.vc-vi{font-size:44px;margin:14px 0 0}.vocab-card.grammar{min-width:1100px;max-width:1400px}.gr-pattern{font-size:80px;margin:0;font-weight:900;color:var(--accent2)}.gr-meaning{font-size:38px;margin:16px 0 0;line-height:1.4;color:#ffffffeb}.gr-ex{margin-top:22px;padding-top:18px;border-top:1.5px solid rgba(255,255,255,.2);display:grid;gap:6px}.gr-ex-ko{font-size:52px;font-weight:800}.gr-ex-vi{font-size:34px;color:var(--muted)}.dlg-bar{position:absolute;left:56px;right:56px;bottom:130px;background:var(--panel);border:1.5px solid rgba(255,255,255,.18);border-radius:36px;padding:40px 50px 44px;box-shadow:0 20px 54px #00000080;z-index:12}.dlg-bar.game{inset:120px 80px auto 380px}.dlg-dot{position:absolute;top:28px;width:64px;height:8px;border-radius:4px;background:var(--accent)}.dlg-dot.left{left:50px}.dlg-dot.right{right:50px}.dlg-ko{margin:6px 0 0;font-weight:900;line-height:1.15;word-break:keep-all}.dlg-rom{margin:8px 0 0;font-size:30px;color:var(--muted)}.dlg-vi{margin:12px 0 0;font-size:42px;color:#ffffffe6}.dlg-vi span{display:inline-block;animation:rise .4s ease both}.hide-vi .lang-vi{visibility:hidden}.pause-veil{position:absolute;inset:0;z-index:30;background:#0000008c;display:grid;place-items:center;font-size:40px}.play-gate{position:absolute;inset:0;z-index:45;background:#0a07188c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;cursor:pointer}.play-gate .pg-play{width:170px;height:170px;border-radius:50%;background:var(--accent);color:#fff;font-size:72px;display:grid;place-items:center;box-shadow:0 18px 50px #00000073;padding-left:12px}.play-gate p{color:#fff;font-size:40px;font-weight:700;text-align:center;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.6);line-height:1.4}.play-gate small{font-size:28px;font-weight:500;color:#ffffffd9}.prompt{position:absolute;left:50%;transform:translate(-50%);bottom:480px;max-width:1500px;text-align:center;font-size:40px;color:#fff;font-weight:800;background:#534ab7d9;padding:12px 34px;border-radius:999px;z-index:12}.prompt-order{top:110px;bottom:auto}.choices{position:absolute;left:90px;right:90px;bottom:110px;display:grid;grid-template-columns:1fr 1fr;gap:22px;z-index:12}.choice{background:#221a44f2;border:2px solid rgba(255,255,255,.2);border-radius:24px;padding:26px 30px;text-align:left;transition:transform .12s,border-color .12s}.choice:hover{transform:translateY(-3px);border-color:var(--accent)}.choice .ch-ko{display:block;font-size:40px;font-weight:800;word-break:keep-all}.choice .ch-vi{display:block;font-size:26px;color:var(--muted);margin-top:6px}.choice.ok{border-color:var(--ok);animation:okPop .4s cubic-bezier(.2,.9,.3,1.25)}.choice.bad{border-color:var(--bad);animation:shake .35s}@keyframes shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes okPop{0%{transform:scale(1)}45%{transform:scale(1.05);box-shadow:0 0 0 4px #3ecf8e59}to{transform:scale(1)}}.locked{pointer-events:none;opacity:.55}.locked:after{content:"đang nghe…";position:absolute;top:-46px;left:50%;transform:translate(-50%);font-size:26px;color:var(--accent2)}.feedback{position:absolute;left:50%;transform:translate(-50%);bottom:24px;z-index:25;background:#000c;border-radius:18px;padding:14px 30px;max-width:1400px}.feedback p{margin:0;font-size:30px}.fb-ok{color:var(--ok)}.fb-bad{color:var(--bad)}.shop-grid{position:absolute;left:120px;right:120px;bottom:130px;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;z-index:12}.shop-item{background:#221a44eb;border:3px solid rgba(255,255,255,.18);border-radius:26px;padding:22px;display:grid;gap:10px;place-items:center;transition:border-color .12s,transform .12s}.shop-item:hover{transform:translateY(-4px)}.shop-item img{height:190px;width:auto;max-width:100%;object-fit:contain}.shop-item.picked,.shop-item.ok{border-color:var(--ok)}.shop-item.ok{animation:okPop .4s cubic-bezier(.2,.9,.3,1.25)}.shop-item.bad{border-color:var(--bad);animation:shake .35s}.si-label{font-size:30px;font-weight:800;text-align:center}.si-label small{display:block;font-size:22px;color:var(--muted);font-weight:500}.hidden-label{visibility:hidden}.node-root>.btn{position:absolute;left:50%;transform:translate(-50%);bottom:36px;z-index:13;font-size:30px;padding:16px 44px}.hs-area{position:absolute;inset:0;z-index:11}.hs-spot{position:absolute;border-radius:50%;border:0;background:transparent}.hs-spot.ok{border:4px solid var(--ok);background:#3ecf8e2e;animation:okPop .4s cubic-bezier(.2,.9,.3,1.25)}.hs-spot.bad{border:4px solid var(--bad);animation:shake .35s}.hs-label{position:absolute;transform:translate(-50%);background:#000000d9;border-radius:14px;padding:8px 20px;font-size:30px;font-weight:800;z-index:14}.hs-label small{color:var(--muted);font-weight:500}.ripple{position:absolute;width:20px;height:20px;border-radius:50%;border:3px solid rgba(255,255,255,.7);transform:translate(-50%,-50%);animation:rip .6s ease-out both;pointer-events:none}@keyframes rip{to{width:90px;height:90px;opacity:0}}.order-slots{position:absolute;left:120px;right:120px;bottom:420px;min-height:110px;display:flex;gap:16px;flex-wrap:wrap;align-items:center;justify-content:center;border-bottom:3px dashed rgba(255,255,255,.25);padding-bottom:18px;z-index:12}.order-chips{position:absolute;left:120px;right:120px;bottom:200px;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;z-index:12}.chip{background:var(--accent);border-radius:18px;padding:18px 30px;font-size:40px;font-weight:800;transition:opacity .15s,transform .15s}.chip:hover{transform:translateY(-3px)}.chip.used{opacity:.25;pointer-events:none}.chip.placed{background:var(--card);border:2px solid var(--accent)}.order-slots .chip.placed:last-child{animation:chipDrop .28s cubic-bezier(.2,.9,.3,1.2) both}@keyframes chipDrop{0%{opacity:0;transform:translateY(-14px) scale(.85)}to{opacity:1;transform:none}}.ox-img{position:absolute;left:50%;top:360px;transform:translate(-50%);height:330px;border-radius:24px;z-index:11}.ox-row{position:absolute;left:50%;transform:translate(-50%);bottom:150px;display:flex;gap:80px;z-index:12}.ox-btn{width:340px;height:280px;border-radius:40px;font-size:120px;font-weight:900;display:grid;place-items:center;backdrop-filter:blur(2px)}.ox-btn small{font-size:30px;font-weight:600}.ox-btn.o{background:#3ecf8e2e;border:4px solid var(--ok);color:var(--ok)}.ox-btn.x{background:#ff6b6b26;border:4px solid var(--bad);color:var(--bad)}.ox-btn.ok{transform:scale(1.06);animation:oxOkPop .4s cubic-bezier(.2,.9,.3,1.3)}.ox-btn.bad{animation:shake .35s}@keyframes oxOkPop{0%{transform:scale(1)}55%{transform:scale(1.12)}to{transform:scale(1.06)}}.practice{position:absolute;inset:0;display:grid;place-content:center;gap:26px;text-align:center}.practice h2{font-size:56px;margin:0}.pr-list{display:grid;grid-template-columns:repeat(2,minmax(420px,1fr));gap:20px}.pr-game{background:var(--card);border:2px solid rgba(255,255,255,.18);border-radius:24px;padding:26px 34px;display:grid;gap:6px;text-align:left;transition:border-color .15s}.pr-game:hover{border-color:var(--accent)}.pg-label{color:var(--accent2);font-weight:800;font-size:28px}.pg-title{font-size:36px;font-weight:700}.pg-extra{font-size:28px;color:var(--accent2)}.endcard-veil{position:fixed;inset:0;z-index:50;background:#0a0718e0;display:grid;place-items:center;overflow:auto;padding:16px;animation:ecVeil .2s ease both}.endcard{width:min(560px,94vw);background:var(--card);border-radius:22px;padding:1.6rem;display:grid;gap:14px;text-align:center;animation:ecPop .34s cubic-bezier(.34,1.4,.5,1) both}@keyframes ecVeil{0%{opacity:0}to{opacity:1}}@keyframes ecPop{0%{opacity:0;transform:scale(.92) translateY(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.endcard-veil,.endcard{animation:none}}.ec-stars{font-size:54px;margin:0;color:var(--accent2);letter-spacing:8px}.ec-score{margin:0;font-size:18px}.ec-review{background:#00000040;border-radius:14px;padding:12px;display:grid;gap:10px}.ec-rv-head{margin:0;font-weight:700}.ec-avg{color:var(--muted);font-weight:400;font-size:14px}.ec-starpick .sp{font-size:34px;color:#ffffff40;padding:0 4px}.ec-starpick .sp.on{color:var(--accent2)}.ec-comment{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#0000004d;color:var(--text);padding:10px;font:inherit;font-size:16px}.ec-sent{color:var(--ok);font-size:14px}.ec-donate{display:flex;gap:16px;align-items:center;background:#f3c64814;border:1px dashed rgba(243,198,72,.5);border-radius:14px;padding:14px;text-align:left}.ec-qr-link{display:block;flex:none;line-height:0;border-radius:10px;background:#fff;padding:6px;transition:transform .15s ease-out}.ec-qr-link:hover{transform:scale(1.03)}.ec-qr-link:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.ec-donate img{width:168px;height:168px;border-radius:8px;display:block;object-fit:contain;background:#fff}.ec-d-title{margin:0;font-weight:800;color:var(--accent2)}.ec-d-sub{margin:4px 0 0;font-size:13.5px;color:var(--muted)}@media(max-width:480px){.ec-donate{flex-direction:column;gap:12px;text-align:center;padding:16px 14px}.ec-donate img{width:200px;height:200px}}.ec-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.ec-need-login a{color:var(--accent2);text-decoration:underline}.acc-tabs{display:flex;gap:8px;justify-content:center}.acc-tabs button{padding:8px 22px;border-radius:999px;background:#ffffff14}.acc-tabs button.on{background:var(--accent)}#acc-form{display:grid;gap:10px}#acc-form input{padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#0000004d;color:var(--text);font-size:16px}.acc-err{color:var(--bad);margin:0;font-size:14px}.acc-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.admin{max-width:1020px;margin:0 auto;padding:1.5rem 1rem 3rem}.admin table{width:100%;border-collapse:collapse;margin:.6rem 0 1.4rem;font-size:14.5px}.admin th,.admin td{text-align:left;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.12)}.site-head .brand{font-weight:800;font-size:1.1rem;color:var(--accent2)}.hero{position:relative;max-width:1060px;margin:0 auto;padding:3.2rem 1rem 2.6rem;overflow:hidden}.hero-inner{position:relative;z-index:1;max-width:640px}.hero-brand{color:var(--accent2);font-weight:700;letter-spacing:1px;font-size:.95rem;margin:0 0 10px;text-transform:uppercase}.hero-title{font-size:clamp(1.9rem,4.5vw,3rem);line-height:1.15;margin:0}.hero-sub{color:var(--muted);font-size:1.05rem;line-height:1.55;margin:14px 0 22px}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}.hero-deco{position:absolute;right:-10px;top:50%;transform:translateY(-50%);font-size:clamp(6rem,18vw,13rem);font-weight:900;color:#9b59e01f;pointer-events:none;user-select:none;line-height:1}.sec-h{max-width:1060px;margin:0 auto .9rem;padding:0 1rem;font-size:1.15rem;color:var(--accent2);text-transform:uppercase;letter-spacing:1.5px}.how{margin:.6rem auto 2rem}.how-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;max-width:1060px;margin:0 auto;padding:0 1rem}.how-step{background:var(--card);border-radius:var(--radius);padding:1.1rem 1.2rem;display:grid;gap:6px}.how-step .how-n{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;display:grid;place-items:center}.how-step b{font-size:1.02rem}.how-step span:last-child{color:var(--muted);font-size:.92rem;line-height:1.5}.rm-section{padding-bottom:1rem}.rm-cell{display:flex;flex-direction:column;gap:6px}.rm-cell .rm-card{flex:1}.rm-actions{display:flex;gap:6px}.rm-actions a{flex:1;text-align:center;font-size:12.5px;font-weight:700;color:var(--accent2);background:#f3c64814;border:1px solid rgba(243,198,72,.4);border-radius:10px;padding:5px 8px}.rm-actions a:hover{background:#f3c6482e}.site-foot{border-top:1px solid rgba(255,255,255,.1);margin-top:2.5rem;padding:2rem 1rem 2.4rem}.foot-grid{max-width:1060px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:24px}.foot-about p,.foot-nav p{color:var(--muted);font-size:.9rem;line-height:1.5;margin:8px 0 0}.foot-nav{display:grid;gap:8px;align-content:start}.foot-nav a{color:var(--muted);font-size:.95rem}.foot-nav a:hover{color:var(--text)}.foot-nav b,.foot-about b{color:var(--accent2)}.foot-copy{max-width:1060px;margin:1.6rem auto 0;padding:0;color:#ffffff59;font-size:.85rem}@media(max-width:640px){.hero{padding-top:2.2rem}.hero-cta .btn{width:100%}.hero-deco{display:none}.foot-grid{grid-template-columns:1fr}}.rv-page,.fc-page{max-width:880px;margin:0 auto;padding:1rem 1rem 3rem}.rv-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:.4rem 0 1rem}.rv-title{display:grid}.rv-title b{font-size:1.15rem}.rv-title span{color:var(--muted);font-size:.9rem}.rv-sec{margin:1.2rem 0 0}.rv-sec .sec-h{padding:0;margin:0 0 .7rem}.rv-group{background:var(--card);border-radius:var(--radius);padding:.9rem 1rem;margin-bottom:12px}.rv-gh{margin:0 0 6px;color:var(--accent2);font-size:1.02rem;display:flex;align-items:center;gap:8px}.rv-gh small{color:var(--muted);font-weight:500}.rv-word{display:grid;grid-template-columns:minmax(110px,auto) 1fr auto 44px;gap:10px;align-items:center;padding:9px 4px;border-bottom:1px solid rgba(255,255,255,.07)}.rv-word:last-child{border-bottom:0}.rv-word .rv-ko{font-weight:800;font-size:1.25rem}.rv-word .rv-rom{color:var(--muted);font-style:italic;font-size:.88rem}.rv-word .rv-vi{text-align:right;color:var(--text)}.rv-say{width:40px;height:40px;border-radius:50%;background:#9b59e02e;color:var(--accent);display:grid;place-items:center;font-size:20px;flex-shrink:0}.rv-say:hover{background:#9b59e059}.rv-gram{background:var(--card);border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:12px}.rv-gram-top{display:flex;align-items:center;gap:10px;justify-content:space-between}.rv-pat{font-weight:900;font-size:1.3rem;color:var(--accent2)}.rv-mean{color:var(--muted);margin:8px 0 0;line-height:1.5}.rv-ex{margin:10px 0 0;padding-top:10px;border-top:1px dashed rgba(255,255,255,.15);line-height:1.5}.rv-dlg{display:grid;gap:10px}.rv-turn{display:flex;align-items:flex-end;gap:8px}.rv-turn.right{flex-direction:row-reverse}.rv-who{color:var(--muted);font-size:.85rem;min-width:52px;text-align:center}.rv-bub{background:var(--card);border-radius:16px;padding:10px 14px;display:grid;gap:2px;max-width:540px}.rv-turn.right .rv-bub{background:#9b59e040}.rv-d-ko{font-weight:800;font-size:1.08rem}.rv-d-vi{color:var(--muted);font-size:.92rem}@media(max-width:560px){.rv-word{grid-template-columns:1fr auto;grid-template-areas:"ko say" "rom say" "vi say"}.rv-word .rv-ko{grid-area:ko}.rv-word .rv-rom{grid-area:rom}.rv-word .rv-vi{grid-area:vi;text-align:left}.rv-say{grid-area:say}}.fc-known{color:var(--accent2);font-weight:700}.fc-body{display:grid;justify-items:center;gap:18px;padding-top:1.2rem}.fc-card{position:relative;width:min(560px,92vw);min-height:300px;background:var(--card);border-radius:22px;display:grid;place-items:center;text-align:center;padding:2rem 1.4rem;cursor:pointer;border:1.5px solid rgba(255,255,255,.12);transition:transform .15s,border-color .15s}.fc-card:hover{border-color:var(--accent)}.fc-card.flipped{border-color:var(--accent2)}.fc-ko{font-weight:900;font-size:clamp(2.4rem,9vw,3.6rem)}.fc-hint{color:var(--muted);font-size:.88rem;margin-top:14px}.fc-rom{color:var(--muted);font-style:italic;font-size:1.1rem}.fc-vi{font-weight:800;font-size:clamp(1.5rem,6vw,2.2rem);margin-top:8px;color:var(--accent2)}.fc-say{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;background:#9b59e02e;color:var(--accent);display:grid;place-items:center;font-size:22px}.fc-nav{display:flex;align-items:center;gap:18px}.fc-arrow{width:52px;height:52px;border-radius:50%;background:var(--card);font-size:20px}.fc-arrow:disabled{opacity:.3}.fc-pos{color:var(--muted);min-width:72px;text-align:center}.fc-judge{display:flex;gap:12px}.fc-tools{display:flex;gap:10px}.fc-summary{text-align:center;display:grid;gap:10px;justify-items:center;padding-top:2rem}.fc-sum-big{font-size:3.4rem;font-weight:900;color:var(--accent2)}.fc-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}@media(prefers-reduced-motion:reduce){.stage,.stage *{animation:none!important;transition-duration:.01ms!important}}.page{--p-bg: #FFFBF7;--p-surface: #FFFFFF;--p-surface-2: #FEF5EC;--p-surface-3: #FCF2EC;--p-surface-4: #F0E6E1;--p-ink: #1F1B18;--p-sub: #58413E;--p-faint: #8A817C;--p-rose: #AC332A;--p-rose-2: #FF6F61;--p-rose-ink: #8B1A16;--p-rose-tint: #FFDAD5;--p-rose-tint-2: #FFB4AA;--p-amber: #845400;--p-amber-bg: #FEB246;--p-amber-tint: #FFDDB6;--p-teal: #006B5B;--p-teal-fixed: #7CF8DD;--p-line: #EAE1DB;--p-line-2: #E0BFBB;--p-ok: #006B5B;--p-bad: #BA1A1A;--p-r-sm: 12px;--p-r: 16px;--p-r-lg: 24px;--p-pill: 9999px;--p-shadow-sm: 0 1px 2px rgba(31, 27, 24, .06);--p-shadow: 0 8px 24px rgba(31, 27, 24, .08);--p-shadow-btn: 0 4px 0 0 rgba(172, 51, 42, .4);--p-ease: cubic-bezier(.22, .61, .36, 1);--p-display: "Plus Jakarta Sans", var(--font-vn)}html:has(.page){scroll-behavior:smooth}body:has(.page){background:#fffbf7}.page{min-height:100dvh;background:var(--p-bg);color:var(--p-ink);font-family:var(--font-vn);-webkit-font-smoothing:antialiased}.page *::selection{background:var(--p-rose-tint);color:var(--p-rose-ink)}.page :where(h1,h2,h3){text-wrap:balance;margin:0;font-family:var(--p-display)}.page a{color:var(--p-rose)}.page .ko,.page [lang=ko]{font-family:var(--font-kr)}.msym{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-flex;white-space:nowrap;direction:ltr;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.msym.fill{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--p-rose);color:#fff;border:2px solid transparent;border-radius:var(--p-pill);padding:12px 24px;font-size:15px;font-weight:700;line-height:1;cursor:pointer;box-shadow:var(--p-shadow-btn);transition:transform .15s var(--p-ease),background .15s,box-shadow .15s,border-color .15s}.page .btn:hover{background:#97251d}.page .btn:active{transform:translateY(4px);box-shadow:0 0 #ac332a66}.page .btn:focus-visible{outline:none;box-shadow:var(--p-shadow-btn),0 0 0 3px var(--p-rose-tint),0 0 0 5px var(--p-rose-tint-2)}.page .btn:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.page .btn.ghost{background:transparent;color:var(--p-rose);border-color:var(--p-rose);box-shadow:none}.page .btn.ghost:hover{background:var(--p-rose-tint)}.page .btn.ghost:active{transform:none}.page .btn.secondary{background:var(--p-rose);color:#fff;border-color:transparent}.page .btn.secondary:hover{background:#97251d}.page .btn.danger{background:transparent;color:var(--p-bad);border-color:var(--p-bad);box-shadow:none}.page .btn.danger:active{transform:none}.page .btn.small{padding:8px 18px;font-size:13.5px;box-shadow:0 3px #ac332a59}.page .btn.small.ghost{box-shadow:none}.page .btn .msym{font-size:20px}.page .vip-badge{display:inline-flex;align-items:center;gap:3px;background:var(--p-amber-bg);color:#2a1800;border-radius:var(--p-pill);padding:2px 9px;font-size:11px;font-weight:700;vertical-align:middle;letter-spacing:.2px}.page .vip-badge .msym{font-size:13px}.page .muted{color:var(--p-sub)}.page .site-head{position:sticky;top:0;z-index:200;display:flex;align-items:center;gap:12px;height:72px;max-width:none;width:100%;margin:0;padding:0 calc(max(0px,(100% - 1200px) / 2) + clamp(20px,4vw,40px));background:#fffbf7e6;backdrop-filter:saturate(1.2) blur(12px);border-bottom:1px solid var(--p-line);box-shadow:var(--p-shadow-sm)}.page .site-head .brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--p-display);font-weight:700;font-size:22px;color:var(--p-rose)}.page .site-head .brand:before{content:"한";font-family:var(--font-kr);display:grid;place-items:center;width:34px;height:34px;border-radius:var(--p-r-sm);background:var(--p-rose);color:#fff;font-size:18px;font-weight:900}.page .site-head .tb-spacer{flex:1}.page .site-head nav{display:flex;align-items:center;gap:10px}.page .site-head .who{display:inline-flex;align-items:center;gap:8px;color:var(--p-ink);font-weight:600;font-size:14px}.page .site-head .who .ava{width:32px;height:32px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose-ink);display:grid;place-items:center;font-weight:700;font-size:14px}.page .site-head .who-name{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page .site-head .site-nav{display:flex;align-items:center;gap:2px}.page .site-head .site-nav a{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border-radius:var(--p-pill);font-size:14.5px;font-weight:600;color:var(--p-sub);text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}.page .site-head .site-nav a:hover{background:var(--p-rose-tint);color:var(--p-rose-ink)}.page .site-head .site-nav-event{color:var(--p-rose)}.page .site-head .site-nav-event .msym{font-size:17px}.page .site-head-r{display:flex;align-items:center;gap:10px}@media(max-width:760px){.page .site-head{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:8px;row-gap:8px}.page .site-head .tb-spacer{display:none}.page .site-head .brand{margin-right:auto}.page .site-head .site-nav{order:3;width:100%;overflow-x:auto;gap:4px;padding-bottom:2px}}.page .nb-wrap{position:relative;display:inline-flex}.page .nb-bell{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:transparent;border:0;color:var(--p-sub);cursor:pointer;transition:background .15s var(--ease-quint),color .15s}.page .nb-bell:hover{background:var(--p-surface-2);color:var(--p-rose)}.page .nb-bell .msym{font-size:24px}.page .nb-badge{position:absolute;top:4px;right:4px;min-width:17px;height:17px;padding:0 4px;border-radius:var(--p-pill);background:var(--p-rose);color:#fff;font-size:10.5px;font-weight:800;line-height:17px;text-align:center;box-shadow:0 0 0 2px var(--p-bg)}.page .nb-badge[hidden]{display:none}.page .nb-bell.nb-pulse{animation:nb-pulse .5s var(--ease-quint)}@keyframes nb-pulse{0%{transform:scale(1)}35%{transform:scale(1.18)}to{transform:scale(1)}}.page .nb-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,92vw);max-height:70vh;overflow-y:auto;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);box-shadow:var(--p-shadow);z-index:250;animation:nb-drop .16s var(--ease-quint)}.page .nb-panel[hidden]{display:none}@keyframes nb-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.page .nb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 10px;border-bottom:1px solid var(--p-line);position:sticky;top:0;background:var(--p-surface)}.page .nb-head b{font-family:var(--p-display);font-size:16px;color:var(--p-ink)}.page .nb-readall{background:none;border:0;color:var(--p-rose-ink);font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:2px 4px}.page .nb-readall:hover{text-decoration:underline}.page .nb-list{display:flex;flex-direction:column}.page .nb-empty{padding:28px 16px;text-align:center;color:var(--p-faint);font-size:14px}.page .nb-item{display:block;padding:12px 16px;border-bottom:1px solid var(--p-line);color:inherit;text-decoration:none;transition:background .12s}.page .nb-item:last-child{border-bottom:0}.page .nb-item:hover{background:var(--p-surface-2)}.page .nb-item.unread{background:var(--p-rose-tint)}.page .nb-item.unread:hover{background:var(--p-rose-tint-2)}.page .nb-item-title{font-weight:700;font-size:14px;color:var(--p-ink);margin-bottom:2px}.page .nb-item-body{font-size:13px;color:var(--p-sub);line-height:1.4}.page .nb-item-time{font-size:11.5px;color:var(--p-faint);margin-top:4px}@media(prefers-reduced-motion:reduce){.page .nb-bell.nb-pulse,.page .nb-panel{animation:none}}.page .hero{position:relative;padding:clamp(48px,8vw,96px) clamp(20px,4vw,40px) clamp(56px,9vw,112px);overflow:hidden}.page .hero-inner{position:relative;z-index:1;max-width:780px;margin:0 auto;text-align:center}.page .hero-brand{display:inline-flex;align-items:center;gap:8px;background:var(--p-rose-tint);color:var(--p-rose-ink);font-weight:700;font-size:13px;border-radius:var(--p-pill);padding:6px 16px;margin:0 0 24px;animation:heroFloat 4s ease-in-out infinite}.page .hero-brand .msym{font-size:18px}.page .hero-title{font-family:var(--p-display);font-size:clamp(40px,7vw,64px);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--p-ink);max-width:16em;margin:0 auto}.page .hero-title em{color:var(--p-rose);font-style:italic}.page .hero-sub{color:var(--p-sub);font-size:18px;line-height:1.65;margin:22px auto 36px;max-width:48ch}.page .hero-cta{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.page .hero-cta .btn{padding:16px 32px;font-size:18px}.page .hero-art{display:block;width:min(300px,62vw);height:auto;margin:28px auto 0}.page .empty-art{display:block;width:140px;height:auto;margin:0 auto 8px}.skip-link{position:fixed;top:10px;left:10px;z-index:600;padding:10px 16px;background:#ff4d6d;color:#fff;font-weight:700;border-radius:12px;transform:translateY(-160%);transition:transform .15s ease}.skip-link:focus{transform:none;outline:3px solid rgba(255,77,109,.4)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page .nf-wrap{max-width:560px;margin:0 auto;padding:48px 20px 64px;text-align:center}.page .nf-art{display:block;width:min(200px,50vw);height:auto;margin:0 auto 16px}.page .nf-title{font-size:26px;font-weight:800;margin:0 0 8px;color:var(--p-ink)}.page .nf-sub{color:var(--p-sub);margin:0 0 24px}.page .nf-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}@keyframes skel-pulse{0%,to{opacity:1}50%{opacity:.45}}.skel{background:var(--p-surface-2);animation:skel-pulse 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.skel{animation:none}}.page .lb-skel{display:flex;flex-direction:column;gap:8px}.page .lb-skel-row{height:64px;border-radius:14px}.page .hero-deco{position:absolute;inset:0;z-index:0;display:grid;place-items:center;font-family:var(--font-kr);font-size:clamp(14rem,36vw,32rem);font-weight:900;color:var(--p-ink);opacity:.04;pointer-events:none;user-select:none;line-height:1}@media(min-width:880px){.page .hero-deco{place-items:center end;padding-right:2vw;opacity:.05}}@keyframes heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.page .sec-h{max-width:1200px;margin:0 auto 16px;padding:0 clamp(20px,4vw,40px);font-family:var(--p-display);font-size:clamp(26px,3vw,36px);font-weight:800;color:var(--p-ink);text-transform:none;letter-spacing:-.02em;line-height:1.15}.page .how{background:var(--p-surface);padding:clamp(40px,7vw,80px) 0;margin:clamp(8px,2vw,24px) 0 0}.page .how .sec-h{text-align:center;margin-bottom:clamp(32px,5vw,56px)}.page .how-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(28px,4vw,56px);max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px);position:relative}@media(min-width:800px){.page .how-steps:before{content:"";position:absolute;top:40px;left:calc(50% / 3 + 40px);right:calc(50% / 3 + 40px);height:2px;background:linear-gradient(90deg,var(--p-rose-tint),var(--p-amber-tint),var(--p-teal-fixed));z-index:0}}.page .how-step{display:flex;flex-direction:column;align-items:center;text-align:center;background:transparent;border-radius:0;padding:0;gap:0;position:relative;z-index:1}.page .how-step .how-n{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font-family:var(--p-display);font-weight:800;font-size:28px;margin-bottom:28px;background:var(--p-rose-tint);color:var(--p-rose);box-shadow:0 0 0 6px var(--p-bg);transition:transform .25s var(--p-ease),box-shadow .25s}.page .how-step:nth-child(2) .how-n{background:var(--p-amber-tint);color:var(--p-amber)}.page .how-step:nth-child(3) .how-n{background:var(--p-teal-fixed);color:var(--p-teal)}.page .how-step:hover .how-n{transform:scale(1.12) translateY(-4px);box-shadow:0 0 0 6px var(--p-bg),0 8px 24px #ac332a26}.page .how-step b{font-family:var(--p-display);font-size:21px;font-weight:700;color:var(--p-ink);margin-bottom:12px}.page .how-step span:last-child{color:var(--p-sub);font-size:15px;line-height:1.65;max-width:28ch}.page .rm-section{background:var(--p-bg);padding:clamp(40px,7vw,80px) 0 clamp(24px,4vw,40px)}.page .rm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;max-width:1200px;margin:0 auto clamp(32px,5vw,56px);padding:0 clamp(20px,4vw,40px)}.page .rm-head .sec-h{padding:0;margin:0}.page .rm-head .rm-head-sub{color:var(--p-sub);font-size:16px;margin:8px 0 0;max-width:36rem}.page .rm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}.page .course-shelf{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}@keyframes card-fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.page .rm-card,.page .course-card{animation:card-fade-up .4s var(--p-ease) both}.page .rm-card:nth-child(2),.page .course-card:nth-child(2){animation-delay:.07s}.page .rm-card:nth-child(3),.page .course-card:nth-child(3){animation-delay:.14s}.page .rm-card:nth-child(4),.page .course-card:nth-child(4){animation-delay:.21s}.page .rm-card:nth-child(5),.page .course-card:nth-child(5){animation-delay:.28s}.page .rm-card:nth-child(n+6),.page .course-card:nth-child(n+6){animation-delay:.35s}.page .course-card{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:inherit;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:24px;min-height:340px;overflow:hidden;transition:transform .2s var(--p-ease),border-color .2s,box-shadow .2s}.page .course-card:hover{transform:translateY(-3px);border-color:var(--p-rose-2);box-shadow:var(--p-shadow)}.page .course-card .cc-cover{margin:-24px -24px 10px;height:200px;background:var(--p-surface-4) center/cover no-repeat}.page .course-card:hover .cc-cover{opacity:.96}.page .course-card .cc-top{display:flex;align-items:center;gap:8px}.page .course-card .cc-series{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--p-sub)}.page .course-card .cc-dot{width:9px;height:9px;border-radius:50%}.page .course-card .cc-title{font-size:22px;font-weight:800;color:var(--p-ink);line-height:1.2;margin:0}.page .course-card .cc-sub{font-size:13px;color:var(--p-sub);line-height:1.5;margin:0;flex:1}.page .course-card .cc-bar{height:7px;width:100%;background:var(--p-surface-4);border-radius:var(--p-pill);overflow:hidden}.page .course-card .cc-bar>i{display:block;height:100%;background:var(--p-rose-2);border-radius:var(--p-pill)}.page .course-card .cc-foot{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--p-sub)}.page .course-card .cc-meta{display:inline-flex;align-items:center;gap:5px}.page .course-card .cc-foot .msym{font-size:16px}.page .course-card .cc-prog{display:inline-flex;align-items:center;gap:4px;font-weight:700;color:var(--p-ink)}.page .rm-cell{display:flex;flex-direction:column;gap:8px}.page .rm-card{flex:1;position:relative;display:flex;flex-direction:column;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:24px;min-height:180px;transition:transform .2s var(--p-ease),border-color .2s,box-shadow .2s}.page .rm-card:hover{transform:translateY(-2px);border-color:var(--p-rose-2);box-shadow:var(--p-shadow)}.page .rm-card .rm-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.page .rm-card .rm-badge{position:relative;width:48px;height:48px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--p-surface);border:2px solid var(--p-line-2)}.page .rm-card .rm-ord{font-size:10px;font-weight:700;color:var(--p-sub);line-height:1}.page .rm-card .rm-check{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--p-teal);color:#fff;display:grid;place-items:center;box-shadow:var(--p-shadow-sm)}.page .rm-card .rm-check .msym{font-size:14px;font-variation-settings:"wght" 700}.page .rm-card .rm-tags{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.page .rm-card .rm-ko{font-family:var(--font-kr);font-size:26px;font-weight:900;color:var(--p-ink);line-height:1.1;margin-bottom:4px}.page .rm-card .rm-title{font-size:14px;font-weight:700;color:var(--p-sub);margin-bottom:16px}.page .rm-card .rm-meta{margin-top:auto;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--p-sub)}.page .rm-card .rm-meta .msym{font-size:16px}.page .rm-card .rm-stars{margin-top:12px}.page .rm-card .rm-stars-row{display:flex;justify-content:space-between;font-size:10px;font-weight:700;color:var(--p-amber);margin-bottom:6px}.page .rm-card .rm-bar{height:6px;width:100%;background:var(--p-surface-4);border-radius:var(--p-pill);overflow:hidden}.page .rm-card .rm-bar>i{display:block;height:100%;background:var(--p-amber-bg);border-radius:var(--p-pill)}.page .rm-card.done{background:#006b5b0d;border-color:#006b5b33}.page .rm-card.done:hover,.page .rm-card.done .rm-badge{border-color:var(--p-teal)}.page .rm-card.done .rm-ord{color:var(--p-teal)}.page .rm-card.rm-locked{opacity:.9}.page .rm-card.rm-locked .rm-badge{border-style:dashed;border-color:var(--p-line-2);background:transparent}.page .rm-card .rm-lockbox{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px;background:var(--p-surface-3);border-radius:var(--p-r-sm);font-size:12px;font-weight:700;color:var(--p-faint)}.page .rm-lock{color:var(--p-faint);font-weight:700}.page .rm-card.soon{background:#fcf2ec66;border-style:dashed;border-color:var(--p-line-2);opacity:.5;pointer-events:none}.page .rm-card.soon .rm-badge{background:var(--p-surface-4);border:none}.page .rm-card.soon .rm-ord{color:#58413e66}.page .rm-card.soon .rm-ko{color:#1f1b1840}.page .rm-card.soon .rm-title{display:none}.page .rm-card.soon .rm-soon-tag{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#58413e80}.page .rm-card .rm-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:var(--p-pill);font-size:10px;font-weight:700}.page .rm-card .rm-pill.diff{background:#feb24633;color:var(--p-amber)}.page .rm-actions{display:flex;gap:16px;padding:12px 4px 0}.page .rm-actions a{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--p-sub);transition:color .15s}.page .rm-actions a:hover{color:var(--p-rose)}.page .rm-actions a .msym{font-size:15px}.page .rm-more{max-width:1200px;margin:clamp(32px,5vw,56px) auto 0;padding:0 clamp(20px,4vw,40px);text-align:center}.page .rm-more a{display:inline-flex;align-items:center;gap:6px;color:var(--p-rose);font-weight:700;font-size:15px}.page .rm-more a:hover{text-decoration:underline}.page .about{max-width:1200px;margin:clamp(40px,6vw,72px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .about .sec-h{padding:0}.page .about-card{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:28px;box-shadow:var(--p-shadow-sm)}.page .about-card .ava-row{display:flex}.page .about-card .ava-row .ava{width:56px;height:56px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose);display:grid;place-items:center;font-family:var(--font-kr);font-weight:900;font-size:22px;border:3px solid var(--p-surface);margin-left:-16px}.page .about-card .ava-row .ava:nth-child(2){background:var(--p-amber-tint);color:var(--p-amber)}.page .about-card .ava-row .ava:nth-child(3){background:var(--p-teal-fixed);color:var(--p-teal)}.page .about-card .ava-row .ava:first-child{margin-left:0}.page .about-card p{margin:0;color:var(--p-sub);font-size:15px;line-height:1.6}.page .about-card b{color:var(--p-ink)}.page .site-foot{margin-top:clamp(40px,7vw,80px);background:var(--p-surface-4);border-top:1px solid var(--p-line);border-radius:28px 28px 0 0;padding-top:clamp(40px,6vw,64px)}.page .foot-grid{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px) clamp(28px,4vw,48px);display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:24px}.page .foot-logo{width:48px;height:48px;display:block;margin-bottom:12px}.page .foot-about b{display:block;font-family:var(--p-display);color:var(--p-rose);font-size:22px;font-weight:800;margin-bottom:12px}.page .foot-nav b{display:block;color:var(--p-amber);font-size:14px;font-weight:700;margin-bottom:20px}.page .foot-about p,.page .foot-nav p{color:var(--p-sub);font-size:15px;line-height:1.6;margin:0}.page .foot-nav{display:grid;gap:14px;align-content:start}.page .foot-nav a{color:var(--p-sub);font-size:15px;transition:color .15s,transform .15s}.page .foot-nav a:hover{color:var(--p-rose);transform:translate(4px)}.page .foot-copy{max-width:1200px;margin:0 auto;padding:clamp(20px,3vw,32px) clamp(20px,4vw,40px) clamp(28px,4vw,40px);border-top:1px solid var(--p-line);color:var(--p-faint);font-size:15px}.page.rv-page,.page.fc-page{max-width:860px;margin:0 auto;padding:16px clamp(14px,4vw,24px) 64px}.page .rv-head,.page .fc-page>.rv-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0 14px}.page .rv-title{display:grid}.page .rv-title b{font-size:17px;color:var(--p-ink)}.page .rv-title span{color:var(--p-sub);font-size:13px;font-family:var(--font-kr)}.page .rv-sec{margin-top:22px}.page .rv-sec>.sec-h{padding:0;margin:0 0 10px}.page .rv-group{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:14px 16px;margin-bottom:12px}.page .rv-gh{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--p-rose-ink);font-size:16px;font-weight:700}.page .rv-gh small{color:var(--p-faint);font-weight:500;font-family:var(--font-kr)}.page .rv-word{display:grid;grid-template-columns:minmax(96px,auto) 1fr auto 44px;gap:10px;align-items:center;padding:10px 4px;border-top:1px solid var(--p-line)}.page .rv-word:first-of-type{border-top:0}.page .rv-word .rv-ko{font-family:var(--font-kr);font-weight:800;font-size:21px;color:var(--p-ink)}.page .rv-word .rv-rom{color:var(--p-faint);font-style:italic;font-size:13px}.page .rv-word .rv-vi{text-align:right;color:var(--p-ink);font-size:15px}.page .rv-say{width:40px;height:40px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose-ink);display:grid;place-items:center;font-size:20px;flex-shrink:0;border:0;cursor:pointer;transition:background .15s}.page .rv-say:hover{background:#ffdce4}.page .rv-say:focus-visible{outline:none;box-shadow:0 0 0 3px #ff4d6d66}.page .rv-gram{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:16px;margin-bottom:12px}.page .rv-gram-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.page .rv-pat{font-family:var(--font-kr);font-weight:800;font-size:22px;color:var(--p-rose-ink)}.page .rv-mean{color:var(--p-sub);margin:8px 0 0;line-height:1.5}.page .rv-ex{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--p-line);line-height:1.5;color:var(--p-ink)}.page .rv-ex b{font-family:var(--font-kr)}.page .rv-dlg{display:grid;gap:9px}.page .rv-turn{display:flex;align-items:flex-end;gap:8px}.page .rv-turn.right{flex-direction:row-reverse}.page .rv-who{color:var(--p-faint);font-size:12.5px;min-width:48px;text-align:center;font-family:var(--font-kr)}.page .rv-bub{background:var(--p-surface);border:1px solid var(--p-line);border-radius:16px;padding:10px 14px;display:grid;gap:2px;max-width:80%}.page .rv-turn.right .rv-bub{background:var(--p-rose-tint);border-color:transparent}.page .rv-d-ko{font-family:var(--font-kr);font-weight:700;font-size:17px;color:var(--p-ink)}.page .rv-d-vi{color:var(--p-sub);font-size:14px}.page .fc-known{color:var(--p-rose-ink);font-weight:700;font-size:14px}.page .fc-body{display:grid;justify-items:center;gap:16px;padding-top:18px}.page .fc-card{position:relative;width:min(540px,92vw);min-height:290px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);display:grid;place-items:center;text-align:center;padding:32px 22px;cursor:pointer;transition:transform .15s var(--p-ease),border-color .15s,box-shadow .15s}.page .fc-card:hover{border-color:var(--p-line-2);box-shadow:var(--p-shadow)}.page .fc-card.flipped{border-color:var(--p-rose)}.page .fc-card:focus-visible{outline:none;box-shadow:0 0 0 3px #ff4d6d66}.page .fc-tag{position:absolute;top:14px;left:14px;background:var(--p-rose-tint);color:var(--p-rose-ink);font-size:11px;font-weight:700;border-radius:var(--p-pill);padding:4px 12px}.page .fc-face{display:grid;justify-items:center;gap:2px}.page .fc-ko{font-family:var(--font-kr);font-weight:800;font-size:clamp(2.4rem,9vw,3.4rem);color:var(--p-ink)}.page .fc-hint{color:var(--p-faint);font-size:13px;margin-top:12px}.page .fc-rom{color:var(--p-faint);font-style:italic;font-size:17px}.page .fc-vi{font-weight:700;font-size:clamp(1.4rem,6vw,2.1rem);margin-top:6px;color:var(--p-rose-ink)}.page .fc-say{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose-ink);display:grid;place-items:center;border:0;cursor:pointer;transition:background .15s}.page .fc-say:hover{background:var(--p-rose-tint-2)}.page .fc-say .msym{font-size:24px}.page .fc-nav{display:flex;align-items:center;gap:16px}.page .fc-arrow{width:50px;height:50px;border-radius:50%;background:var(--p-surface);border:1px solid var(--p-line-2);color:var(--p-ink);cursor:pointer;display:grid;place-items:center;transition:background .15s,border-color .15s}.page .fc-arrow .msym{font-size:24px}.page .fc-arrow:hover:not(:disabled){background:var(--p-surface-2);border-color:var(--p-rose)}.page .fc-arrow:disabled{opacity:.35;cursor:default}.page .fc-pos{color:var(--p-sub);min-width:70px;text-align:center;font-size:14px}.page .fc-judge,.page .fc-tools{display:flex;gap:10px}.page .fc-summary{text-align:center;display:grid;gap:10px;justify-items:center;padding-top:24px}.page .fc-sum-big{font-size:3.2rem;font-weight:800;color:var(--p-rose-ink)}.page .fc-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.page .acc-card,.page .lock-card{max-width:420px;margin:8vh auto;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:28px;text-align:center;display:flex;flex-direction:column;gap:14px;box-shadow:var(--p-shadow-sm)}.page .lock-card{background:linear-gradient(160deg,var(--p-surface) 0%,#fdf0ff 100%);border-color:#c74dac33;overflow:hidden;position:relative}.page .lock-card:before{content:"";position:absolute;top:-60px;right:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(199,77,172,.12) 0%,transparent 70%);pointer-events:none}.page .lock-gem{font-size:48px;color:var(--p-rose);animation:lock-gem-float 3s ease-in-out infinite}@keyframes lock-gem-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.page .acc-card h2,.page .lock-card h2{font-size:22px;color:var(--p-ink)}.page .acc-tabs{display:flex;gap:6px;justify-content:center;background:var(--p-surface-2);padding:4px;border-radius:var(--p-pill)}.page .acc-tabs button{flex:1;padding:9px 18px;border-radius:var(--p-pill);background:transparent;border:0;font:inherit;font-weight:600;color:var(--p-sub);cursor:pointer}.page .acc-tabs button.on{background:var(--p-surface);color:var(--p-rose-ink);box-shadow:var(--p-shadow-sm)}.page #acc-form{display:grid;gap:10px;text-align:left}.page input,.page #acc-form input,.page textarea,.page select{width:100%;padding:12px 14px;border-radius:var(--p-r);border:1.5px solid var(--p-line-2);background:var(--p-surface);color:var(--p-ink);font:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.page input:focus,.page #acc-form input:focus,.page textarea:focus,.page select:focus{outline:none;border-color:var(--p-rose);box-shadow:0 0 0 3px var(--p-rose-tint)}.page input::placeholder,.page textarea::placeholder{color:var(--p-faint)}.page .acc-err{color:var(--p-bad);margin:0;font-size:13.5px}.page .acc-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.page .loading-page{display:grid;place-items:center;min-height:60vh;color:var(--p-sub)}.page .acc-wrap{max-width:560px;margin:0 auto;padding:16px clamp(14px,4vw,24px) 64px}.page .acc-layout{max-width:1180px;margin:0 auto;padding:clamp(20px,3vw,32px) clamp(16px,4vw,40px) clamp(40px,6vw,64px);display:grid;grid-template-columns:248px minmax(0,1fr);gap:clamp(18px,2.4vw,28px);align-items:start}.page .acc-content{display:flex;flex-direction:column;gap:clamp(16px,2vw,24px);min-width:0}.page .acc-content>.acc-sec{margin-bottom:0}.page .acc-side{position:sticky;top:80px;display:flex;flex-direction:column;gap:6px}.page .acc-side-card{background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:22px 16px 18px;text-align:center;box-shadow:var(--p-shadow-sm);margin-bottom:6px}.page .acc-side-ava{margin:0 auto 12px}.page .acc-side-name{font-weight:800;font-size:16px;color:var(--p-ink)}.page .acc-side-tags{margin-top:8px;display:flex;gap:5px;justify-content:center;flex-wrap:wrap}.page .acc-side-free{font-size:12px;color:var(--p-sub)}.page .acc-side-nav{display:flex;flex-direction:column;gap:4px}.page .acc-side-link{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:14px;font-weight:600;font-size:14.5px;color:var(--p-ink);text-decoration:none;transition:background .15s,color .15s}.page .acc-side-link .msym{font-size:20px;color:var(--p-sub);transition:color .15s}.page .acc-side-link:hover{background:var(--p-surface-3)}.page .acc-side-link.on{background:var(--p-rose);color:#fff}.page .acc-side-link.on .msym{color:#fff}.page .acc-side-logout{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:14px;font-weight:600;font-size:14.5px;color:var(--p-bad);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;margin-top:2px;transition:background .15s}.page .acc-side-logout .msym{font-size:20px}.page .acc-side-logout:hover{background:var(--p-rose-tint)}.page .acc-drawer-toggle,.page .acc-scrim{display:none}@media(max-width:880px){.page .acc-layout{grid-template-columns:1fr;gap:0}.page .acc-drawer-toggle{display:flex;align-items:center;gap:8px;width:100%;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:14px;padding:12px 16px;font-weight:700;font-size:15px;color:var(--p-ink);cursor:pointer;margin-bottom:16px}.page .acc-drawer-toggle>.msym{font-size:22px;color:var(--p-rose)}.page .acc-drawer-toggle .acc-dt-caret{margin-left:auto;color:var(--p-sub)}.page .acc-side{position:fixed;top:0;left:0;bottom:0;width:284px;max-width:86vw;z-index:300;background:var(--p-bg);box-shadow:var(--p-shadow);padding:16px;overflow-y:auto;transform:translate(-100%);transition:transform .25s var(--p-ease)}.page .acc-side.open{transform:translate(0)}.page .acc-side-nav{flex-direction:column}.page .acc-side-link{justify-content:flex-start}.page .acc-scrim{display:block;position:fixed;inset:0;z-index:290;background:#1f1b186b;opacity:0;pointer-events:none;transition:opacity .25s}.page .acc-scrim.open{opacity:1;pointer-events:auto}}body.acc-drawer-lock{overflow:hidden}.page .acc-verify-banner{display:flex;align-items:center;gap:12px;background:var(--p-amber-tint);color:var(--p-amber);border-radius:var(--p-r-lg);padding:12px 18px;text-decoration:none;font-size:14px;line-height:1.4}.page .acc-verify-banner>.msym{font-size:24px;flex-shrink:0}.page .acc-verify-banner .avb-txt{flex:1;min-width:0}.page .acc-verify-banner .avb-txt b{font-weight:800}.page .acc-verify-banner .avb-cta{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;background:var(--p-amber);color:#fff;font-weight:700;padding:6px 13px;border-radius:var(--p-pill);white-space:nowrap}.page .acc-view-profile .acc-grp-security,.page .acc-view-security .acc-grp-profile{display:none}.page .acc-side-link.danger,.page .acc-side-link.danger .msym{color:var(--p-bad)}.page .acc-side-link.danger.on{background:var(--p-bad);color:#fff}.page .acc-side-link.danger.on .msym{color:#fff}.page .acc-sess{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--p-line)}.page .acc-sess:last-of-type{border-bottom:none}.page .acc-sess-ic{font-size:26px;color:var(--p-sub);flex:none}.page .acc-sess-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.page .acc-sess-info .muted{font-size:12.5px}.page .acc-sess-now{background:var(--p-rose-tint);color:var(--p-rose-ink);font-size:11px;font-weight:700;padding:1px 8px;border-radius:var(--p-pill);margin-left:4px}.page .acc-sess-foot{margin-top:16px}.page .acc-ord-row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr 1.3fr;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--p-line);font-size:14px}.page .acc-ord-row:last-of-type{border-bottom:none}.page .acc-ord-head{font-weight:700;color:var(--p-sub);font-size:12px;text-transform:uppercase;letter-spacing:.3px}.page .acc-ord-code{font-family:ui-monospace,monospace;font-size:13px}.page .acc-ord-st{font-weight:700;font-size:12.5px}.page .acc-ord-paid{color:var(--p-good, #1a7f37)}.page .acc-ord-pending{color:var(--p-amber)}.page .acc-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--p-line);cursor:pointer}.page .acc-toggle:last-of-type{border-bottom:none}.page .acc-toggle-t{display:flex;flex-direction:column;gap:2px}.page .acc-toggle-t .muted{font-size:12.5px}.page .acc-toggle input{width:20px;height:20px;flex:none;accent-color:var(--p-rose);cursor:pointer}.page .acc-danger-box{display:flex;gap:12px;background:#fff4f2;border:1px solid var(--p-rose-tint);border-radius:16px;padding:16px;margin-bottom:18px}.page .acc-danger-box>.msym{color:var(--p-bad);font-size:28px;flex:none}.page .acc-danger-box ul{margin:8px 0 0;padding-left:18px;font-size:13.5px;color:var(--p-sub);display:flex;flex-direction:column;gap:4px}.page .acc-empty{text-align:center;padding:28px 0;color:var(--p-sub)}.page .acc-empty .msym{font-size:40px;opacity:.5;display:block;margin:0 auto 8px}@media(max-width:560px){.page .acc-ord-row{grid-template-columns:1fr 1fr 1.2fr;font-size:13px}.page .acc-ord-row>:nth-child(4),.page .acc-ord-row>:nth-child(5){display:none}}.page .acc-head{padding:8px 4px 18px}.page .acc-head h2{font-size:24px}.page .acc-head p{color:var(--p-sub);font-size:13.5px;margin:6px 0 0}.page .acc-sec{background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:28px;padding:clamp(20px,3vw,32px);margin-bottom:16px;box-shadow:var(--p-shadow-sm)}.page .acc-sec h3{font-size:16px;margin:0 0 12px;display:flex;align-items:center;gap:8px}.page .acc-form{display:grid;gap:12px}.page .acc-form label,.page .acc-field{display:grid;gap:6px;font-size:13px;color:var(--p-sub);font-weight:600}.page .acc-avatars{display:flex;gap:14px;flex-wrap:wrap}.page .acc-ava-opt{width:56px;height:56px;border-radius:50%;border:0;background:var(--p-faint);color:#fff;font-weight:800;font-size:19px;cursor:pointer;display:grid;place-items:center;transition:box-shadow .15s,transform .15s}.page .acc-ava-opt:hover{transform:translateY(-2px)}.page .acc-ava-opt.on{box-shadow:0 0 0 3px var(--p-surface-2),0 0 0 5px var(--p-rose)}.page .acc-ava-preview{width:120px;height:120px;border-radius:50%;margin:4px auto 8px;display:grid;place-items:center;font-size:52px;font-weight:800;color:var(--p-rose-ink);background:var(--p-rose-tint);border:4px solid #fff;box-shadow:0 6px 18px #1f1b181f}.page .acc-ava-opt[data-av=sunhi],.page .acc-ava-preview[data-av=sunhi]{background:var(--p-amber-bg);color:#6f4600}.page .acc-ava-opt[data-av=mark],.page .acc-ava-preview[data-av=mark]{background:#24b098;color:#fff}.page .acc-ava-opt[data-av=linh],.page .acc-ava-preview[data-av=linh]{background:var(--p-rose-2);color:#fff}.page .acc-ava-opt[data-av=wei],.page .acc-ava-preview[data-av=wei]{background:#3b5998;color:#fff}.page .acc-ava-opt[data-av=injoon],.page .acc-ava-preview[data-av=injoon]{background:#8c716d;color:#fff}.page #otp-box{display:flex;gap:8px}.page #otp-box input{flex:1}.page .acc-msg{margin:0;font-size:13px}.page .acc-msg.ok{color:var(--p-ok)}.page .acc-msg.bad{color:var(--p-bad)}.page .otp-resend{font-size:13px;color:var(--p-sub);margin:10px 0 2px}.page .acc-link{background:none;border:none;padding:0;font:inherit;color:var(--p-rose);font-weight:700;cursor:pointer;text-decoration:underline}.page .acc-link:disabled{color:var(--p-faint);text-decoration:none;cursor:default;font-weight:600}.page .otp-sep{color:var(--p-faint);margin:0 4px}.page .vip-badge.ok{background:#e2f2eb;color:var(--p-ok)}.page .acc-card-ico{width:64px;height:64px;margin:0 auto 2px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose);display:grid;place-items:center}.page .acc-card-ico .msym{font-size:32px}.page .acc-card #acc-form,.page .acc-card #otp-form{display:grid;gap:10px;text-align:left}.page .acc-welcome{color:var(--p-sub);font-size:14px;line-height:1.5;margin:-4px auto 2px;max-width:34ch}.page #acc-form{gap:13px}.page .acc-fld{display:grid;gap:6px;text-align:left}.page .acc-lbl{font-size:13px;font-weight:700;color:var(--p-sub)}.page .acc-inp{display:flex;align-items:center;gap:10px;padding:0 14px;border:1.5px solid var(--p-line-2);border-radius:var(--p-r);background:var(--p-surface);transition:border-color .15s,box-shadow .15s}.page .acc-inp:focus-within{border-color:var(--p-rose);box-shadow:0 0 0 3px var(--p-rose-tint)}.page .acc-inp>.msym{flex:none;color:var(--p-faint);font-size:20px}.page #acc-form .acc-inp input{flex:1;min-width:0;border:0;background:transparent;padding:12px 0;box-shadow:none;font-size:16px}.page #acc-form .acc-inp input:focus{box-shadow:none}.page .acc-eye{flex:none;border:0;background:transparent;color:var(--p-faint);cursor:pointer;display:grid;place-items:center;padding:4px;border-radius:8px}.page .acc-eye:hover{color:var(--p-rose)}.page .acc-fine{font-size:12.5px;line-height:1.5}.page .acc-or{display:flex;align-items:center;gap:12px;color:var(--p-faint);font-size:12px;margin:2px 0}.page .acc-or:before,.page .acc-or:after{content:"";flex:1;height:1px;background:var(--p-line)}.page .acc-google-slot{min-height:44px;display:grid;place-items:center;opacity:1;transition:opacity .15s}.page .acc-google-slot[hidden]{display:none}.page .acc-google-slot.is-loading{opacity:.55;pointer-events:none}.page .acc-google-fallback{margin:0;color:var(--p-sub);font-size:13px;line-height:1.5}.page .acc-auth-methods{display:grid;gap:8px;margin-bottom:14px}.page .acc-auth-methods>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--p-line);border-radius:var(--p-r);background:var(--p-surface)}.page .acc-auth-methods span{color:var(--p-sub);font-size:13px}.page .acc-form.compact{gap:8px}.page .acc-guest{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--p-rose);font-weight:700;font-size:14px;padding:11px;border:1.5px solid var(--p-rose-tint);border-radius:var(--p-r);transition:background .15s,border-color .15s}.page .acc-guest:hover{background:var(--p-rose-tint);border-color:var(--p-rose)}.page .acc-guest .msym{font-size:19px}.page .acc-back{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--p-faint);font-size:13px;font-weight:600;padding:4px}.page .acc-back:hover{color:var(--p-rose)}.page .acc-back .msym{font-size:17px}.page:has(.acc-glow){position:relative}.page .acc-glow{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(440px 440px at 50% 38%,rgba(255,111,97,.13),transparent 70%)}.page .acc-card{position:relative;z-index:1}.page .acc-sec h3 .msym{font-size:20px;color:var(--p-rose)}.page .acc-vip{text-align:center;background:var(--p-surface-2);border-color:var(--p-surface-4)}.page .acc-vip-ico{width:64px;height:64px;margin:4px auto 14px;border-radius:50%;background:var(--p-amber-tint);color:var(--p-amber);display:grid;place-items:center}.page .acc-vip-ico .msym{font-size:34px}.page .acc-vip h3{justify-content:center;font-family:var(--p-display);font-size:20px}.page .acc-vip>.muted{font-size:14px;line-height:1.55;max-width:42ch;margin:0 auto 16px}.page .acc-vip-benefits{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px;text-align:left}.page .acc-vip-benefits li{display:flex;align-items:center;gap:12px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r);padding:12px 14px;font-size:14px;font-weight:600;color:var(--p-ink)}.page .acc-vip-benefits .msym{color:var(--p-teal);font-size:22px;flex:none}.page .acc-vip .btn{margin:4px auto 0}.page .dash-wrap{max-width:1200px;margin:0 auto;padding:clamp(20px,3vw,32px) clamp(16px,4vw,40px) clamp(40px,6vw,64px);display:grid;gap:clamp(20px,3vw,32px)}.page .dash-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:clamp(20px,3vw,32px);box-shadow:var(--p-shadow)}.page .dash-hero-id{display:flex;align-items:center;gap:16px;min-width:0}.page .dash-ava{position:relative;flex:none;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:800;color:var(--p-rose-ink);background:var(--p-rose-tint);border:4px solid #fff;box-shadow:var(--p-shadow-sm)}.page .dash-ava[lang=ko]{font-family:var(--font-kr)}.page .dash-ava[data-av=sunhi]{background:var(--p-amber-bg);color:#6f4600}.page .dash-ava[data-av=mark]{background:#24b098;color:#fff}.page .dash-ava[data-av=linh]{background:var(--p-rose-2);color:#fff}.page .dash-ava[data-av=wei]{background:#3b5998;color:#fff}.page .dash-ava[data-av=injoon]{background:#8c716d;color:#fff}.page .dash-ava-vip{position:absolute;bottom:-4px;right:-4px;background:var(--p-amber-bg);color:#2a1800;font-size:10px;font-weight:800;letter-spacing:.3px;padding:1px 7px;border-radius:var(--p-pill);border:2px solid #fff}.page .dash-hi h1{font-family:var(--p-display);font-size:clamp(22px,3.5vw,28px);font-weight:800;color:var(--p-ink);margin:0}.page .dash-hi p{color:var(--p-sub);font-size:15px;margin:6px 0 0}.page .dash-hero-cta{flex:none}.page .dash-cta-btn{background:var(--p-rose-2);box-shadow:0 4px 0 0 var(--p-rose-ink);padding:16px 32px;font-size:17px}.page .dash-cta-btn:hover{background:#ff5c4d}.page .dash-cta-btn:active{box-shadow:0 0 0 0 var(--p-rose-ink)}.page .dash-cta-btn .msym{font-size:22px}.page .dash-streak-banner{display:flex;align-items:center;gap:10px;padding:11px 16px;border-radius:var(--p-r);font-size:13.5px;line-height:1.4;border:1px solid var(--p-line);background:var(--p-surface-2);color:var(--p-sub)}.page .dash-streak-banner .msym{font-size:22px;flex:none}.page .dash-streak-banner b{color:var(--p-ink)}.page .dash-streak-banner.is-rest{background:#fff4e8;border-color:#ffd9a8;color:#7a4b12}.page .dash-streak-banner.is-rest .msym{color:#e07a1f}.page .dash-streak-banner.is-paused{background:#ecf7ee;border-color:#bfe3c6;color:#2c5a37}.page .dash-streak-banner.is-paused .msym{color:#3f9a52}.page .dash-streak-banner.is-reset{background:#fff7e0;border-color:#f0dc9a;color:#6b5310}.page .dash-streak-banner.is-reset .msym{color:#c99a1e}.page .dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,2vw,24px)}.page .dash-stat{background:var(--p-surface);border:1px solid var(--p-line-2);border-radius:var(--p-r);padding:16px 18px;box-shadow:var(--p-shadow-sm);transition:transform .2s var(--p-ease)}.page .dash-stat:hover{transform:translateY(-3px)}.page .dash-stat-l{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--p-sub);margin-bottom:8px}.page .dash-stat-l .msym{font-size:22px}.page .dash-stat-l .ds-fire{color:var(--p-rose)}.page .dash-stat-l .ds-book{color:#3b5998}.page .dash-stat-l .ds-star{color:var(--p-amber-bg)}.page .dash-stat-l .ds-word{color:var(--p-teal)}.page .dash-stat-n{font-family:var(--p-display);font-size:clamp(22px,3vw,28px);font-weight:800;color:var(--p-ink);line-height:1.1}.page .dash-stat:first-child .dash-stat-n{color:var(--p-rose)}.page .dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:clamp(16px,2vw,24px);align-items:start}.page .dash-col-main{display:grid;gap:clamp(16px,2vw,24px);align-content:start}.page .dash-card{background:var(--p-surface);border:1px solid var(--p-line-2);border-radius:var(--p-r-lg);padding:clamp(18px,2.5vw,24px);box-shadow:var(--p-shadow)}.page .dash-card.dash-warm{background:var(--p-surface-2);border-color:var(--p-surface-4)}.page .dash-card h3{font-family:var(--p-display);font-size:22px;font-weight:700;color:var(--p-ink);margin:0 0 18px}.page .dash-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:clamp(8px,1.2vw,16px);margin-bottom:18px}.page .dash-day{display:grid;gap:8px;justify-items:center}.page .dash-day-l{font-size:13px;font-weight:700;color:var(--p-sub)}.page .dash-day-box{width:100%;aspect-ratio:1;border-radius:var(--p-r-sm);background:var(--p-surface-3);display:grid;place-items:center;color:#fff}.page .dash-day-box.on{background:var(--p-rose-2)}.page .dash-day-box.today{box-shadow:0 0 0 4px #ff6f6133}.page .dash-day-box .msym{font-size:18px}.page .dash-week-note{display:flex;align-items:center;gap:8px;color:var(--p-sub);font-size:15px;margin:0}.page .dash-week-note .msym{color:var(--p-rose);font-size:20px}.page .dash-week-note b{color:var(--p-rose);font-weight:800}.page .dash-roadmap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.page .dash-roadmap-info{flex:1;min-width:220px}.page .dash-roadmap h3{margin:0 0 10px}.page .dash-roadmap-row{display:flex;align-items:center;gap:16px}.page .dash-roadmap-bar{flex:1;height:12px;background:var(--p-amber-tint);border-radius:var(--p-pill);overflow:hidden}.page .dash-roadmap-bar>i{display:block;height:100%;background:var(--p-rose-2);border-radius:var(--p-pill);box-shadow:0 0 12px #ff6f614d}.page .dash-roadmap-num{font-size:14px;font-weight:700;color:var(--p-rose);flex:none}.page .dash-vip-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#fdf0ff,#fff);border:1.5px solid rgba(199,77,172,.25);position:relative;overflow:hidden}.page .dash-vip-banner:before{content:"";position:absolute;top:-30px;right:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(199,77,172,.12) 0%,transparent 70%);pointer-events:none}.page .dash-vip-left{display:flex;align-items:center;gap:14px}.page .dash-vip-ico{font-size:32px;color:var(--p-rose);animation:lock-gem-float 3s ease-in-out infinite}.page .dash-vip-banner h3{margin:0 0 2px;font-size:16px}.page .dash-vip-banner p{margin:0;font-size:13px;color:var(--p-sub)}.page .dash-vip-banner .btn{position:relative;overflow:hidden;flex:none}.page .dash-vip-banner .btn:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);transform:translate(-150%);animation:vip-btn-shine 2.6s ease 1s infinite}.page .dash-cont-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.page .dash-cont-head h3{font-family:var(--p-display);font-size:22px;font-weight:700;color:var(--p-ink);margin:0}.page .dash-all{display:inline-flex;align-items:center;gap:2px;font-size:14px;font-weight:700;color:var(--p-sub)}.page .dash-all:hover{color:var(--p-rose)}.page .dash-lc-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}.page .dash-lc{display:flex;flex-direction:column;gap:12px;background:var(--p-surface);border:1px solid var(--p-line-2);border-radius:var(--p-r-lg);padding:22px;box-shadow:var(--p-shadow);transition:transform .2s var(--p-ease),border-color .2s}.page .dash-lc:hover{transform:translateY(-2px);border-color:var(--p-rose-2)}.page .dash-lc-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.page .dash-lc-badge{font-size:11px;font-weight:800;letter-spacing:.4px;color:var(--p-rose);background:var(--p-rose-tint);border-radius:var(--p-pill);padding:3px 10px}.page .dash-lc-ko{font-family:var(--font-kr);font-size:28px;font-weight:900;color:var(--p-ink);line-height:1.1}.page .dash-lc-vi{font-size:14px;font-weight:700;color:var(--p-sub);margin-top:-6px}.page .dash-lc-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--p-sub)}.page .dash-lc-meta .msym{font-size:18px}.page .dash-lc-stars{font-size:11px;font-weight:800;color:var(--p-amber)}.page .dash-lc-bar{height:6px;background:var(--p-surface-4);border-radius:var(--p-pill);overflow:hidden;margin-top:-6px}.page .dash-lc-bar>i{display:block;height:100%;background:var(--p-amber-bg);border-radius:var(--p-pill)}.page .dash-lc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;background:var(--p-rose-2);color:#fff;font-size:14px;font-weight:700;border-radius:var(--p-r-sm);padding:11px;box-shadow:0 4px 0 0 var(--p-rose-ink);transition:transform .12s var(--p-ease),box-shadow .12s,background .15s;margin-top:2px}.page .dash-lc-btn:hover{background:#ff5c4d}.page .dash-lc-btn:active{transform:translateY(3px);box-shadow:0 1px 0 0 var(--p-rose-ink)}.page .dash-lc-btn.locked{background:var(--p-surface-4);color:var(--p-faint);box-shadow:none}.page .dash-lc-btn.locked:hover{background:var(--p-line)}.page .dash-lc-btn.locked:active{transform:none}.page .dash-lc-btn .msym{font-size:17px}.page .dash-lc.is-locked .dash-lc-ko,.page .dash-lc.is-locked .dash-lc-vi,.page .dash-lc.is-locked .dash-lc-meta,.page .dash-lc.is-locked .dash-lc-stars{opacity:.45}.page .dash-badges h3{display:flex;align-items:center;gap:8px}.page .dash-badges h3 .msym{color:var(--p-rose);font-size:24px}.page .dash-ach-count{margin-left:auto;font-size:13px;font-weight:700;color:var(--p-rose);background:var(--p-rose-tint);padding:2px 11px;border-radius:var(--p-pill)}.page .dash-ach-cat{margin-top:16px}.page .dash-ach-cat:first-of-type{margin-top:8px}.page .dash-ach-cat h4{font-size:11.5px;color:var(--p-sub);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px}.page .dash-ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:14px 6px}.page .dash-ach{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.page .dash-ach-l{font-size:10.5px;line-height:1.25;color:var(--p-sub)}.page .dash-ach.on .dash-ach-l{color:var(--p-ink);font-weight:600}.page .dash-ach.on:hover .ach-ic{transform:scale(1.1) rotate(-5deg)}.ach-ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .2s var(--p-ease)}.ach-ic .msym{font-size:25px}.ach-bronze{background:#f4e3d5;color:#9c5b2e;box-shadow:inset 0 0 0 2px #dba976}.ach-silver{background:#eceff3;color:#5b6675;box-shadow:inset 0 0 0 2px #bbc2cd}.ach-gold{background:#fbeec1;color:#97690a;box-shadow:inset 0 0 0 2px #eac54b}.ach-platinum{background:#d7f4ed;color:#0c6b59;box-shadow:inset 0 0 0 2px #57c8a2}.ach-ic.off{background:var(--p-surface-4);color:var(--p-faint);box-shadow:none}.ach-ic.off .msym{opacity:.5}.page .dash-badge-l{font-size:11px;font-weight:700;color:var(--p-sub)}.page .dash-acts{margin-top:22px;padding-top:20px;border-top:1px solid var(--p-line-2);display:grid;gap:6px}.page .dash-act{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:var(--p-r);border:0;background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--p-sub);cursor:pointer;transition:background .15s,color .15s}.page .dash-act:hover{background:var(--p-surface-3);color:var(--p-ink)}.page .dash-act .msym{font-size:20px}.page .dash-act.danger{color:var(--p-bad)}.page .dash-act.danger:hover{background:#ba1a1a14;color:var(--p-bad)}@media(max-width:900px){.page .dash-grid{grid-template-columns:1fr}}@media(max-width:640px){.page .dash-stats{grid-template-columns:repeat(2,1fr)}.page .dash-hero{flex-direction:column;align-items:stretch;text-align:center}.page .dash-hero-id{flex-direction:column}.page .dash-hero-cta .btn{width:100%}.page .dash-lc-row{grid-template-columns:1fr}}.page .stats-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:1200px;margin:0 auto clamp(8px,2vw,16px);padding:0 clamp(20px,4vw,40px)}.page .stat-pill{display:inline-flex;align-items:center;gap:8px;background:var(--p-surface-4);border:1px solid rgba(224,191,187,.3);border-radius:var(--p-pill);padding:10px 20px;font-size:14px;font-weight:700;color:var(--p-sub);box-shadow:var(--p-shadow-sm)}.page .stat-pill b{font-weight:800;color:var(--p-rose);font-size:15px}.page .stat-pill .msym{font-size:20px}.page .stat-pill.streak .msym,.page .stat-pill.streak b{color:var(--p-rose)}.page .stat-pill .ic-book{color:var(--p-amber)}.page .stat-pill .ic-star{color:var(--p-amber-bg)}.page .stat-pill .ic-word{color:var(--p-teal)}.page .lt-head{max-width:1200px;margin:0 auto;padding:clamp(28px,5vw,48px) clamp(20px,4vw,40px) clamp(8px,2vw,16px);text-align:center}.page .lt-title{font-family:var(--p-display);font-size:clamp(30px,5vw,40px);font-weight:800;letter-spacing:-.02em;color:var(--p-ink)}.page .lt-sub{color:var(--p-sub);font-size:16px;line-height:1.6;margin:12px auto 0;max-width:46ch}.page .lt-body{padding:clamp(16px,3vw,32px) 0 clamp(24px,4vw,40px)}.page .lt-tier{margin-top:clamp(28px,5vw,48px)}.page .lt-tier:first-child{margin-top:0}.page .lt-tier-head{max-width:1200px;margin:0 auto clamp(18px,3vw,28px);padding:0 clamp(20px,4vw,40px)}.page .lt-tier-head .sec-h{padding:0;margin:0}.page .lt-tier-sub{color:var(--p-sub);font-size:15px;margin:6px 0 0;max-width:40rem}.page .lt-lessons{max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px);display:flex;flex-direction:column;gap:18px}.page .lt-lesson{background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:16px 18px;box-shadow:var(--p-shadow-sm);transition:border-color .2s,box-shadow .2s}.page .lt-lesson:hover{border-color:var(--p-rose-2);box-shadow:var(--p-shadow)}.page .lt-lesson.done{background:#006b5b0d;border-color:#006b5b33}.page .lt-main{display:flex;align-items:center;gap:16px}.page .lt-badge{position:relative;flex:none;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--p-surface);border:2px solid var(--p-line-2);font-family:var(--p-display);font-weight:800;font-size:19px;color:var(--p-sub)}.page .lt-lesson.done .lt-badge{border-color:var(--p-teal);color:var(--p-teal)}.page .lt-check{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--p-teal);color:#fff;display:grid;place-items:center;box-shadow:var(--p-shadow-sm)}.page .lt-check .msym{font-size:14px;font-variation-settings:"wght" 700}.page .lt-meta{display:grid;gap:2px;min-width:0}.page .lt-ko{font-family:var(--font-kr);font-size:23px;font-weight:900;color:var(--p-ink);line-height:1.1}.page .lt-vi{color:var(--p-sub);font-size:14px;font-weight:600}.page .lt-main .vip-badge{margin-left:8px;flex:none}.page .lt-go{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:6px;background:var(--p-rose);color:#fff;border-radius:var(--p-pill);padding:9px 18px;font-size:13.5px;font-weight:700;box-shadow:0 3px #ac332a59}.page .lt-main:hover .lt-go{background:#97251d}.page .lt-go.locked{background:var(--p-surface-4);color:var(--p-faint);box-shadow:none}.page .lt-games{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;padding-left:68px}.page .lt-game{display:inline-flex;align-items:center;gap:7px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-pill);padding:7px 14px;font-size:13px;font-weight:600;color:var(--p-ink);transition:border-color .15s,transform .15s}.page .lt-game:hover{border-color:var(--p-rose);transform:translateY(-1px)}.page .lt-game .msym{font-size:17px;color:var(--p-sub)}.page .lt-game.vip{background:#feb2461f;border-color:var(--p-amber-tint)}.page .lt-game.vip .msym{color:var(--p-amber)}.page .lt-game-stars{color:var(--p-amber-bg);font-size:12px;letter-spacing:1px}.page .lt-lesson.soon{opacity:.5}@media(max-width:560px){.page .lt-main{flex-wrap:wrap}.page .lt-go{margin-left:0}.page .lt-games{padding-left:0}}.page .says{background:var(--p-surface-2);padding:clamp(40px,7vw,80px) 0;margin-top:clamp(40px,6vw,72px)}.page .says .sec-h{text-align:center;margin-bottom:clamp(32px,5vw,56px)}.page .says-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}.page .say-card{background:#ffffffb3;backdrop-filter:blur(8px);border:1px solid #fff;border-radius:28px;padding:32px;box-shadow:var(--p-shadow-sm)}.page .say-stars{color:var(--p-amber-bg);font-size:16px;letter-spacing:1px;margin-bottom:16px}.page .say-text{margin:0 0 16px;color:var(--p-sub);font-style:italic;line-height:1.6}.page .say-who{color:var(--p-sub);font-size:14px}.page .say-who b{font-family:var(--p-display);color:var(--p-ink);font-weight:700}.page .site-head.doc-head .brand,.page .site-head.acc-shell-head .brand{font-size:20px}.page .doc{max-width:880px;margin:0 auto;padding:clamp(28px,5vw,48px) clamp(16px,4vw,40px) clamp(40px,6vw,64px)}.page .doc-card{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:clamp(28px,5vw,56px);box-shadow:var(--p-shadow)}.page .doc-hero{display:flex;margin:0 0 18px}.page .doc-ico{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--p-rose-tint);color:var(--p-rose)}.page .doc-ico .msym{font-size:32px}.page .doc-card h1{font-family:var(--p-display);font-size:clamp(28px,5vw,36px);font-weight:800;color:var(--p-rose);margin:0 0 6px;letter-spacing:-.01em}.page .doc-card .doc-ver{color:var(--p-faint);font-size:13px;font-style:italic;margin:0 0 28px}.page .doc-card .doc-lead{color:var(--p-ink);font-size:18px;line-height:1.6;margin:0 0 8px}.page .doc-card h2{font-family:var(--p-display);font-size:21px;font-weight:700;color:var(--p-amber);margin:36px 0 12px}.page .doc-card p,.page .doc-card li{color:var(--p-sub);line-height:1.7;font-size:16px}.page .doc-card p{margin:0 0 18px}.page .doc-card b{color:var(--p-ink)}.page .doc-card ul{padding:0;margin:0 0 22px;list-style:none}.page .doc-card li{position:relative;padding-left:22px;margin-bottom:10px}.page .doc-card li:before{content:"•";position:absolute;left:4px;color:var(--p-rose);font-weight:700}.page .doc-end{margin-top:48px;padding-top:24px;border-top:1px solid var(--p-line);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:var(--p-faint);font-size:13px;font-style:italic}.page .doc-end-ver{font-weight:700;opacity:.7}.page .ct-wrap{max-width:1200px;margin:0 auto;padding:clamp(28px,5vw,48px) clamp(16px,4vw,40px) clamp(40px,6vw,64px)}.page .ct-intro{text-align:center;margin-bottom:clamp(28px,4vw,44px)}.page .ct-hero-ico{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-rose);margin-bottom:16px}.page .ct-hero-ico .msym{font-size:32px}.page .ct-intro h1{font-family:var(--p-display);font-size:clamp(28px,5vw,40px);font-weight:800;color:var(--p-ink);margin:0 0 12px;letter-spacing:-.01em}.page .ct-intro p{color:var(--p-sub);font-size:17px;line-height:1.6;max-width:52ch;margin:0 auto}.page .ct-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(20px,3vw,32px);align-items:start}.page .ct-cards{display:grid;gap:14px;align-content:start}.page .ct-card{display:flex;align-items:center;gap:16px;background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r);padding:16px 18px;box-shadow:var(--p-shadow-sm);transition:border-color .2s,transform .2s}.page .ct-card:hover{border-color:var(--p-rose-2);transform:translate(4px)}.page .ct-ico{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center}.page .ct-ico .msym{font-size:24px}.page .ct-ico.ct-rose{background:var(--p-rose-tint);color:var(--p-rose)}.page .ct-ico.ct-amber{background:var(--p-amber-tint);color:var(--p-amber)}.page .ct-ico.ct-teal{background:var(--p-teal-fixed);color:var(--p-teal)}.page .ct-meta{display:grid;gap:2px;min-width:0}.page .ct-label{font-size:12px;font-weight:700;color:var(--p-faint)}.page .ct-value{font-family:var(--p-display);font-size:18px;font-weight:700;color:var(--p-ink);overflow-wrap:anywhere}.page .ct-form-card{background:var(--p-surface-2);border:1px solid var(--p-surface-4);border-radius:var(--p-r-lg);padding:clamp(22px,3vw,36px);box-shadow:var(--p-shadow-sm)}.page .ct-form-title{font-family:var(--p-display);font-size:21px;font-weight:700;color:var(--p-ink);margin:0 0 18px}.page .contact-form{display:grid;gap:16px}.page .acc-field i{font-weight:500;font-style:italic;opacity:.7}.page{animation:pageIn .28s var(--p-ease) both}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page .acc-card.acc-swap{animation:accSwap .2s var(--p-ease)}@keyframes accSwap{0%{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:none}}.page .rm-cell{animation:pageIn .32s var(--p-ease) both}.page .rm-cell:nth-child(2){animation-delay:.03s}.page .rm-cell:nth-child(3){animation-delay:.06s}.page .rm-cell:nth-child(4){animation-delay:.09s}.page .rm-cell:nth-child(n+5){animation-delay:.12s}@media(prefers-reduced-motion:reduce){.page,.page *{animation:none!important;transition-duration:.01ms!important}}@media(max-width:700px){.page .foot-grid{grid-template-columns:1fr;gap:28px}.page .about-card{grid-template-columns:1fr;text-align:center;justify-items:center}.page .rm-head{flex-direction:column;align-items:stretch}.page .ct-grid{grid-template-columns:1fr}}@media(max-width:560px){.page .hero-cta{flex-direction:column}.page .hero-cta .btn{width:100%}.page .hero-deco{opacity:.04}.page .rv-word{grid-template-columns:1fr auto;grid-template-areas:"ko say" "rom say" "vi say";row-gap:2px}.page .rv-word .rv-ko{grid-area:ko}.page .rv-word .rv-rom{grid-area:rom}.page .rv-word .rv-vi{grid-area:vi;text-align:left}.page .rv-say{grid-area:say;align-self:center}}.page.vip-overlay{position:fixed;inset:0;z-index:1000;min-height:0;display:grid;place-items:center;padding:16px;background:#22141e8c;backdrop-filter:blur(4px);overflow-y:auto;animation:vip-overlay-in .2s ease both}@keyframes vip-overlay-in{0%{opacity:0}to{opacity:1}}.page .vip-modal{position:relative;width:min(420px,100%);max-height:92vh;overflow-y:auto;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);box-shadow:0 24px 60px #00000040;padding:24px 22px;animation:vip-modal-in .38s var(--ease-expo) both}@keyframes vip-modal-in{0%{opacity:0;transform:translateY(32px) scale(.94)}to{opacity:1;transform:none}}.page .vip-x{position:absolute;top:10px;right:12px;width:32px;height:32px;border:none;background:transparent;font-size:24px;line-height:1;color:var(--p-faint);cursor:pointer;border-radius:8px;transition:background .15s,color .15s}.page .vip-x:hover{background:var(--p-surface-2);color:var(--p-ink)}.page .vip-body h2{font-size:20px;color:var(--p-ink);margin:0 0 8px;display:flex;align-items:center;gap:8px}.page .vip-body>.muted{font-size:13.5px;line-height:1.5;margin:0 0 16px}.page .vip-body .vip-badge{animation:vip-badge-pulse 2.4s ease-in-out infinite}@keyframes vip-badge-pulse{0%,to{box-shadow:0 0 #c74dac4d}50%{box-shadow:0 0 0 5px #c74dac00}}.page .vip-qr{display:grid;place-items:center;margin:0 0 16px}.page .vip-qr img{width:240px;height:240px;border:1px solid var(--p-line);border-radius:var(--p-r);background:#fff;padding:8px}.page .vip-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.page .vip-plan{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 10px;border:2px solid var(--p-line);border-radius:14px;background:var(--p-surface-2);cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s;position:relative;overflow:hidden;animation:vip-plan-in .36s var(--p-ease) both}.page .vip-plan:nth-child(1){animation-delay:.06s}.page .vip-plan:nth-child(2){animation-delay:.12s}.page .vip-plan:nth-child(3){animation-delay:.18s}.page .vip-plan:nth-child(4){animation-delay:.24s}@keyframes vip-plan-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.page .vip-plan:hover{border-color:var(--p-rose);transform:translateY(-3px) scale(1.02);box-shadow:0 0 0 3px var(--p-rose-tint),0 8px 24px #c74dac1f}.page .vip-plan.is-best{background:linear-gradient(145deg,#1c0a2e,#3a1060);border-color:#c9a227}.page .vip-plan.is-best:hover{border-color:#f0c542;box-shadow:0 0 0 3px #c9a22740,0 8px 28px #3c106059}.page .vip-plan.is-best .vp-label,.page .vip-plan.is-best .vp-price{color:#fff}.page .vip-plan.is-best .vp-off{background:#c9a227;color:#1c0a2e}.page .vip-plan.is-best .vp-old{color:#fff9}.page .vp-best-tag{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#c9a227;background:#c9a22726;border:1px solid rgba(201,162,39,.35);border-radius:999px;padding:1px 8px;margin-bottom:2px}.page .vip-plan .vp-label{font-weight:800;font-size:16px;color:var(--p-ink)}.page .vip-plan .vp-price{font-weight:700;color:var(--p-rose-ink)}.page .vip-plan .vp-off{display:inline-block;margin-left:6px;font-size:11px;font-weight:800;color:#fff;background:#e8590c;border-radius:999px;padding:1px 7px;vertical-align:middle;animation:vp-off-pop .45s var(--ease-quint) both}.page .vip-plan:nth-child(1) .vp-off{animation-delay:.28s}.page .vip-plan:nth-child(2) .vp-off{animation-delay:.34s}.page .vip-plan:nth-child(3) .vp-off{animation-delay:.4s}.page .vip-plan:nth-child(4) .vp-off{animation-delay:.46s}@keyframes vp-off-pop{0%{transform:scale(0) rotate(-15deg);opacity:0}to{transform:none;opacity:1}}.page .vip-plan .vp-old{margin-left:7px;font-size:12px;font-weight:600;color:#9aa0aa;text-decoration:line-through}.page .vip-promo{margin:4px 0 12px;padding:9px 14px;border-radius:12px;background:#fff4e6;border:1px solid #FFD8A8;color:#b5430a;font-weight:700;font-size:13px;text-align:center;position:relative;overflow:hidden}.page .vip-promo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);transform:translate(-100%);animation:vip-shimmer 2.8s ease 1.2s infinite}@keyframes vip-shimmer{to{transform:translate(200%)}}.page .vip-countdown{display:inline-flex;align-items:center;gap:4px;margin-left:6px;font-variant-numeric:tabular-nums}.page .vip-countdown b{background:#b4430a1f;border-radius:5px;padding:1px 5px;font-size:12px;min-width:26px;text-align:center;display:inline-block}.page .vip-perks{text-align:left;list-style:none;padding:0;margin:0 0 4px;display:grid;gap:6px}.page .vip-perks li{padding-left:22px;position:relative;font-size:14px;color:var(--p-ink);animation:vip-perk-in .3s var(--p-ease) both}.page .vip-perks li:nth-child(1){animation-delay:.1s}.page .vip-perks li:nth-child(2){animation-delay:.18s}.page .vip-perks li:nth-child(3){animation-delay:.26s}.page .vip-perks li:nth-child(4){animation-delay:.34s}@keyframes vip-perk-in{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.page .vip-perks li:before{content:"✓";position:absolute;left:0;color:var(--p-ok);font-weight:900}.page .vip-info{margin:0 0 14px;display:grid;gap:8px}.page .vip-info>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;border-bottom:1px dashed var(--p-line);padding-bottom:7px}.page .vip-info dt{color:var(--p-sub);font-size:13px;margin:0}.page .vip-info dd{margin:0;font-weight:600;color:var(--p-ink);font-size:14px;text-align:right}.page .vip-info dd code{background:var(--p-rose-tint);color:var(--p-rose-ink);padding:2px 8px;border-radius:6px;font-weight:700}.page .vip-amount{color:var(--p-rose-ink);font-weight:800;font-size:16px}.page .vip-wait{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--p-sub);margin:0 0 14px}.page .vip-spin{width:14px;height:14px;border-radius:50%;border:2px solid var(--p-line-2);border-top-color:var(--p-rose);animation:vip-spin .8s linear infinite;flex:none}@keyframes vip-spin{to{transform:rotate(360deg)}}.page .vip-done{text-align:center;padding:12px 0}.page .vip-check{width:72px;height:72px;margin:0 auto 14px;border-radius:50%;background:var(--p-rose-tint);color:var(--p-ok);display:grid;place-items:center;font-size:40px;font-weight:900;animation:vip-check-pop .5s var(--ease-quint) both}@keyframes vip-check-pop{0%{transform:scale(0) rotate(-30deg);opacity:0}to{transform:none;opacity:1}}.page .vip-done h2{justify-content:center;animation:vip-plan-in .36s var(--p-ease) .3s both}.page .vip-done .muted{animation:vip-plan-in .36s var(--p-ease) .45s both}.page .vip-done .btn{animation:vip-plan-in .36s var(--p-ease) .55s both}.page .acc-vip .btn,.page .btn.js-buy-vip{position:relative;overflow:hidden}.page .acc-vip .btn:after,.page .btn.js-buy-vip:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);transform:translate(-150%);animation:vip-btn-shine 2.6s ease 1s infinite}@keyframes vip-btn-shine{to{transform:translate(200%)}}.page .acc-vip .btn{margin-top:4px}.page .ava-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.page [data-av=img]{background:var(--p-surface-4)!important;color:transparent;padding:0}.page .acc-ava-up{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.page .acc-ava-preview.is-loading{position:relative}.page .acc-ava-preview.is-loading:after{content:"";position:absolute;inset:0;border-radius:50%;background:#ffffff8c url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9' fill='none' stroke='%23B5524C' stroke-width='2.5' stroke-linecap='round' stroke-dasharray='14 42'><animateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='0.9s' repeatCount='indefinite'/></circle></svg>") center/40px no-repeat}.page #ava-up-btn[disabled]{opacity:.7;cursor:progress}.page #ava-up-btn .msym.spin{animation:ava-spin .9s linear infinite}@keyframes ava-spin{to{transform:rotate(360deg)}}.page .lb-wrap{max-width:880px;margin:0 auto;padding:24px 16px 48px}.page .lb-head{text-align:center;margin-bottom:20px}.page .lb-head h1{display:inline-flex;align-items:center;gap:10px;font-size:30px;margin:0 0 6px;color:var(--p-ink)}.page .lb-head h1 .msym{color:var(--p-amber)}.page .lb-head p{color:var(--p-sub);margin:0}.page .lb-tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:18px}.page .lb-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--p-surface-4);background:var(--p-surface);color:var(--p-sub);font-weight:600;font-size:14px;cursor:pointer;transition:all .15s}.page .lb-tab .msym{font-size:18px}.page .lb-tab:hover{border-color:var(--p-rose-tint-2)}.page .lb-tab.on{background:var(--p-rose);border-color:var(--p-rose);color:#fff}.page .lb-list{display:flex;flex-direction:column;gap:8px}.page .lb-empty{text-align:center;padding:32px 0}.page .lb-row{display:grid;grid-template-columns:44px 48px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:var(--p-surface);border:1.5px solid var(--p-surface-4)}.page .lb-rank{font-weight:800;font-size:18px;color:var(--p-faint);text-align:center}.page .lb-top1 .lb-rank{color:#c9a227}.page .lb-top2 .lb-rank{color:#9aa0a6}.page .lb-top3 .lb-rank{color:#b06b3f}.page .lb-ava{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:18px;font-weight:800;color:var(--p-rose-ink);background:var(--p-rose-tint)}.page .lb-ava[lang=ko]{font-family:var(--font-kr)}.page .lb-ava[data-av=sunhi]{background:var(--p-amber-bg);color:#6f4600}.page .lb-ava[data-av=mark]{background:#24b098;color:#fff}.page .lb-ava[data-av=linh]{background:var(--p-rose-2);color:#fff}.page .lb-ava[data-av=wei]{background:#3b5998;color:#fff}.page .lb-ava[data-av=injoon]{background:#8c716d;color:#fff}.page .lb-name{font-weight:600;color:var(--p-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page .lb-you{font-size:11px;font-weight:700;color:var(--p-rose);background:var(--p-rose-tint);padding:1px 7px;border-radius:999px}.page .lb-score{font-weight:800;color:var(--p-rose);white-space:nowrap}.page .lb-row.me{border-color:var(--p-rose);background:var(--p-rose-tint)}.page .lb-me-out{margin-top:6px}.page .lb-ava.lb-badged{box-shadow:0 0 0 2px #c9a227}.page .hm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px}.page .hm-head-left{display:grid;gap:4px;min-width:0}.page .hm-head .sec-h{margin:0;padding:0;display:inline-flex;align-items:center;gap:10px}.page .hm-head-ico{color:var(--p-rose);font-size:24px}.page .hm-head-sub{margin:0;color:var(--p-sub);font-size:14px;line-height:1.5}.page .hm-more{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:13.5px;font-weight:700;color:var(--p-rose);background:var(--p-rose-tint);border-radius:var(--p-pill);padding:8px 14px;text-decoration:none;transition:background .2s,transform .2s}.page .hm-more:hover{background:var(--p-rose-tint-2)}.page .hm-more:hover .msym{transform:translate(2px)}.page .hm-more .msym{font-size:16px;transition:transform .2s var(--p-ease)}.page .hm-head-faq{margin-bottom:16px}.page .preview{max-width:1200px;margin:clamp(32px,5vw,56px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .preview-head{text-align:center;margin-bottom:clamp(20px,3vw,28px)}.page .preview-head .sec-h{padding:0;margin:0}.page .preview-head .sec-sub{color:var(--p-sub);font-size:15px;margin:8px auto 0;max-width:44ch;line-height:1.5}.page .preview-stage{position:relative;max-width:880px;margin-inline:auto;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);box-shadow:0 12px 36px #1f1b181a,0 2px 6px #1f1b180d;overflow:hidden}.page .preview-stage:before{content:"한국어";font-family:var(--font-kr);font-weight:900;position:absolute;top:56px;right:-20px;font-size:180px;line-height:1;color:var(--p-rose-tint);opacity:.35;pointer-events:none;z-index:0;letter-spacing:-.04em}.page .pv-video{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;position:relative;z-index:1;background:var(--p-bg)}.page .pv-badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:5px;background:#22141e9e;color:#fff;font-size:12.5px;font-weight:700;padding:5px 12px;border-radius:var(--p-pill);backdrop-filter:blur(4px)}.page .pv-badge .msym{font-size:15px}.page .pv-chrome{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--p-line);background:var(--p-surface)}.page .pv-tag{display:inline-flex;align-items:center;gap:6px;background:var(--p-rose);color:#fff;border-radius:var(--p-pill);padding:6px 12px;font-size:12.5px;font-weight:700;letter-spacing:-.01em}.page .pv-tag .msym{font-size:16px}.page .pv-eq{display:inline-flex;gap:3px;align-items:flex-end;height:18px}.page .pv-bar{display:block;width:3px;background:var(--p-rose);border-radius:2px;animation:pveq 1s ease-in-out infinite}.page .pv-bar-1{height:40%;animation-delay:0s}.page .pv-bar-2{height:70%;animation-delay:.15s}.page .pv-bar-3{height:100%;animation-delay:.3s}.page .pv-bar-4{height:60%;animation-delay:.45s}.page .pv-bar-5{height:35%;animation-delay:.6s}@keyframes pveq{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.page .pv-cards{position:relative;z-index:1;min-height:clamp(220px,30vw,260px);padding:clamp(32px,6vw,48px) clamp(20px,4vw,32px)}.page .pv-card{position:absolute;inset:clamp(32px,6vw,48px) clamp(20px,4vw,32px);display:grid;place-content:center;text-align:center;gap:10px;opacity:0}.page .pv-card-1{animation:pvshow 12s ease-in-out infinite;animation-delay:0s}.page .pv-card-2{animation:pvshow 12s ease-in-out infinite;animation-delay:4s}.page .pv-card-3{animation:pvshow 12s ease-in-out infinite;animation-delay:8s}@keyframes pvshow{0%,4%{opacity:0;transform:translateY(6px)}8%,30%{opacity:1;transform:translateY(0)}34%,to{opacity:0;transform:translateY(-6px)}}.page .pv-ko{font-family:var(--font-kr);font-weight:900;font-size:clamp(40px,9vw,64px);line-height:1.1;color:var(--p-ink);letter-spacing:-.02em}.page .pv-rom{font-size:13.5px;color:var(--p-faint);font-style:italic;letter-spacing:.02em}.page .pv-vi{font-size:18px;font-weight:700;color:var(--p-rose-ink);margin-top:6px}.page .pv-foot{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;border-top:1px solid var(--p-line);background:var(--p-surface)}.page .pv-chips{display:flex;gap:5px;flex:1;max-width:280px}.page .pv-chip{height:4px;flex:1;background:var(--p-surface-4);border-radius:var(--p-pill);overflow:hidden;position:relative}.page .pv-chip:after{content:"";position:absolute;inset:0;background:var(--p-rose);transform-origin:left;transform:scaleX(0);border-radius:inherit}.page .pv-chip-1:after{animation:pvfill 12s linear infinite;animation-delay:0s}.page .pv-chip-2:after{animation:pvfill 12s linear infinite;animation-delay:4s}.page .pv-chip-3:after{animation:pvfill 12s linear infinite;animation-delay:8s}@keyframes pvfill{0%{transform:scaleX(0)}33%{transform:scaleX(1)}to{transform:scaleX(1)}}.page .pv-counter{font-size:11.5px;color:var(--p-faint);font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}@media(prefers-reduced-motion:reduce){.page .pv-card-1{opacity:1;animation:none;transform:none}.page .pv-card-2,.page .pv-card-3{display:none}.page .pv-chip:after{animation:none;transform:scaleX(.33)}.page .pv-chip-1:after{transform:scaleX(1)}.page .pv-bar{animation:none}}.page .hm-courses{max-width:1200px;margin:clamp(48px,7vw,80px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .hm-courses-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.page .hm-pricing{max-width:900px;margin:clamp(56px,8vw,96px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .hm-pricing-inner{background:linear-gradient(150deg,#fdf0ff 0%,var(--p-surface) 60%);border:1px solid rgba(199,77,172,.18);border-radius:var(--p-r-lg);padding:clamp(28px,4vw,48px);position:relative;overflow:hidden}.page .hm-pricing-inner:before{content:"";position:absolute;top:-80px;right:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(199,77,172,.1) 0%,transparent 70%);pointer-events:none}.page .pricing-promo{display:flex;align-items:center;gap:8px;background:#fff4e6;border:1px solid #FFD8A8;color:#b5430a;font-weight:700;font-size:13px;border-radius:12px;padding:9px 14px;margin:0 0 20px;position:relative;overflow:hidden}.page .pricing-promo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.45) 50%,transparent 100%);transform:translate(-100%);animation:vip-shimmer 2.8s ease .8s infinite}.page .pricing-promo .msym{color:#e8590c;font-size:16px}.page .pricing-cd{font-variant-numeric:tabular-nums;font-weight:800}.page .pricing-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0 0 24px}.page .pricing-card{border:2px solid var(--p-line);border-radius:14px;padding:18px 12px;text-align:center;background:var(--p-surface);position:relative;transition:border-color .18s,box-shadow .18s,transform .18s}.page .pricing-card:hover{border-color:var(--p-rose);transform:translateY(-2px);box-shadow:0 6px 20px #c74dac1f}.page .pricing-best{background:linear-gradient(145deg,#1c0a2e,#3a1060);border-color:#c9a227}.page .pricing-best:hover{border-color:#f0c542;box-shadow:0 8px 28px #3c10604d}.page .pricing-best-tag{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#c9a227;background:#c9a22726;border:1px solid rgba(201,162,39,.3);border-radius:999px;padding:2px 8px;display:inline-block;margin-bottom:6px}.page .pricing-label{font-weight:800;font-size:15px;color:var(--p-ink);margin-bottom:6px}.page .pricing-best .pricing-label{color:#fff}.page .pricing-price{display:flex;flex-direction:column;align-items:center;gap:2px}.page .pricing-sale{font-weight:800;font-size:18px;color:var(--p-rose-ink)}.page .pricing-best .pricing-sale{color:#ffd04d}.page .pricing-old{font-size:12px;color:#9aa0aa;text-decoration:line-through}.page .pricing-best .pricing-old{color:#fff6}.page .pricing-off{font-size:11px;font-weight:800;color:#fff;background:#e8590c;border-radius:999px;padding:1px 7px;display:inline-block}.page .pricing-cta{text-align:center}.page .pricing-cta .btn{min-width:220px}.page .pricing-fine{font-size:12px;color:var(--p-sub);margin:10px 0 0}.page .pricing-vip-done{text-align:center;padding:8px 0}.page .pricing-vip-ico{font-size:44px;color:var(--p-rose);display:block;margin-bottom:12px;animation:lock-gem-float 3s ease-in-out infinite}.page .hm-lb{max-width:1200px;margin:clamp(48px,7vw,80px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .hm-lb-list{list-style:none;padding:0;margin:0 auto;max-width:560px;display:grid;gap:10px}.page .hm-lb-row{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:14px;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r);padding:12px 16px;transition:border-color .2s,transform .2s var(--p-ease)}.page .hm-lb-row:hover{border-color:var(--p-line-2);transform:translateY(-1px)}.page .hm-lb-medal{display:inline-flex;align-items:center;gap:4px;background:var(--p-surface-4);color:var(--p-sub);border-radius:var(--p-pill);padding:5px 10px 5px 8px;font-weight:800;font-size:13px;font-variant-numeric:tabular-nums}.page .hm-lb-medal .msym{font-size:18px}.page .hm-lb-rank{font-family:var(--p-display)}.page .hm-lb-ava{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;background:var(--p-rose-tint);color:var(--p-rose-ink);font-weight:800;font-size:16px;overflow:hidden}.page .hm-lb-ava .ava-img{width:100%;height:100%;object-fit:cover;display:block}.page .hm-lb-ava[lang=ko]{font-family:var(--font-kr)}.page .hm-lb-ava[data-av=sunhi]{background:var(--p-amber-bg);color:#6f4600}.page .hm-lb-ava[data-av=mark]{background:#24b098;color:#fff}.page .hm-lb-ava[data-av=linh]{background:var(--p-rose-2);color:#fff}.page .hm-lb-ava[data-av=wei]{background:#3b5998;color:#fff}.page .hm-lb-ava[data-av=injoon]{background:#8c716d;color:#fff}.page .hm-lb-name{font-weight:700;color:var(--p-ink);font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.page .hm-lb-score{display:inline-flex;align-items:baseline;gap:4px}.page .hm-lb-score b{font-family:var(--p-display);font-weight:800;color:var(--p-rose);font-size:22px;font-variant-numeric:tabular-nums;line-height:1}.page .hm-lb-score-u{font-size:12.5px;color:var(--p-sub);font-weight:600}.page .hm-gold{background:linear-gradient(180deg,#FFF8E1 0%,var(--p-surface) 80%);border-color:#f1d678}.page .hm-gold .hm-lb-medal{background:#ffe89b;color:#8b6a1a}.page .hm-gold .hm-lb-medal .msym{color:#c49426}.page .hm-silver{background:linear-gradient(180deg,#F5F4F6 0%,var(--p-surface) 80%);border-color:#d6d6dc}.page .hm-silver .hm-lb-medal{background:#e8e8ee;color:#5f636c}.page .hm-silver .hm-lb-medal .msym{color:#8a8e97}.page .hm-bronze{background:linear-gradient(180deg,#FDEFD9 0%,var(--p-surface) 80%);border-color:#e6bf8b}.page .hm-bronze .hm-lb-medal{background:#f4d9b0;color:#7e4e1f}.page .hm-bronze .hm-lb-medal .msym{color:#a8702d}@media(max-width:480px){.page .hm-lb-medal{padding:4px 8px;font-size:12px}.page .hm-lb-medal .msym{font-size:16px}.page .hm-lb-ava{width:36px;height:36px;font-size:14px}.page .hm-lb-score b{font-size:20px}}.page .faq{max-width:1200px;margin:clamp(48px,7vw,80px) auto 0;padding:0 clamp(20px,4vw,40px)}.page .faq-list{display:grid;gap:8px;max-width:820px;margin-inline:auto}.page .faq-item{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r);overflow:hidden;transition:border-color .2s,background .2s}.page .faq-item:hover{border-color:var(--p-line-2)}.page .faq-item[open]{border-color:var(--p-rose-tint-2);background:linear-gradient(180deg,var(--p-rose-tint) 0%,var(--p-surface) 100%)}.page .faq-item summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;cursor:pointer;padding:16px 18px;list-style:none;-webkit-tap-highlight-color:transparent}.page .faq-item summary::-webkit-details-marker,.page .faq-item summary::marker{display:none;content:""}.page .faq-ico{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--p-rose-tint);color:var(--p-rose-ink);flex-shrink:0;transition:background .2s}.page .faq-ico .msym{font-size:18px;font-variation-settings:"FILL" 0,"wght" 600}.page .faq-item[open] .faq-ico{background:var(--p-rose);color:#fff}.page .faq-item[open] .faq-ico .msym{font-variation-settings:"FILL" 1,"wght" 500}.page .faq-q{font-weight:700;color:var(--p-ink);font-size:15px;line-height:1.4;min-width:0}.page .faq-chev{font-size:22px;color:var(--p-sub);transition:transform .25s var(--p-ease),color .2s;flex-shrink:0}.page .faq-item[open] .faq-chev{transform:rotate(180deg);color:var(--p-rose)}.page .faq-a{margin:0;padding:0 18px 18px 64px;color:var(--p-sub);font-size:14.5px;line-height:1.65}@media(max-width:480px){.page .faq-item summary{padding:14px;gap:12px}.page .faq-ico{width:28px;height:28px}.page .faq-ico .msym{font-size:16px}.page .faq-q{font-size:14.5px}.page .faq-a{padding:0 14px 14px 54px;font-size:14px}}@media(prefers-reduced-motion:reduce){.page .faq-chev,.page .faq-ico,.page .faq-item,.page .hm-lb-row,.page .hm-more,.page .hm-more .msym{transition:none}}.page .stats-strip[data-community] .stat-n{color:var(--p-faint);transition:color .4s var(--p-ease)}.page .stats-strip[data-community] .stat-n[data-loaded="1"]{color:var(--p-rose)}.page .onboard-form{display:grid;gap:16px}.page .onboard-form .btn{width:100%}.page .onboard-form .acc-ava-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;padding:4px 0}.page .onboard-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}@media(max-width:560px){.page .onboard-goals{grid-template-columns:1fr}}.page .onboard-goal{cursor:pointer;padding:12px 8px;border-radius:var(--p-r);border:1.5px solid var(--p-line);background:var(--p-surface);display:grid;place-items:center;gap:2px;font-size:11.5px;color:var(--p-sub);text-align:center;transition:border-color .15s,background .15s}.page .onboard-goal:hover{border-color:var(--p-line-2)}.page .onboard-goal input{position:absolute;opacity:0;pointer-events:none}.page .onboard-goal b{font-family:var(--p-display);font-size:22px;font-weight:800;color:var(--p-ink);line-height:1}.page .onboard-goal small{font-size:11px;color:var(--p-faint)}.page .onboard-goal:has(input:checked){background:var(--p-rose-tint);border-color:var(--p-rose)}.page .onboard-goal:has(input:checked) b{color:var(--p-rose)}.pn-overlay{--p-surface: #FFFFFF;--p-surface-2: #FEF5EC;--p-surface-4: #F0E6E1;--p-ink: #1F1B18;--p-sub: #58413E;--p-faint: #8A817C;--p-line: #EAE1DB;--p-rose: #AC332A;--p-rose-tint: #FFDAD5;--p-rose-tint-2: #FFB4AA;--p-bad: #BA1A1A;--p-r: 16px;--p-r-sm: 12px;--p-r-lg: 24px;--p-pill: 999px;--p-shadow-btn: 0 4px 0 0 rgba(172, 51, 42, .35);--p-ease: cubic-bezier(.2, .9, .3, 1);position:fixed;inset:0;z-index:9999;background:#1f1b188c;display:grid;place-items:center;padding:16px;animation:pn-fadeIn .18s ease-out}@keyframes pn-fadeIn{0%{opacity:0}to{opacity:1}}.pn-modal{background:var(--p-surface);color:var(--p-ink);border-radius:var(--p-r-lg);padding:24px 22px 20px;width:100%;max-width:380px;box-shadow:0 16px 48px #1f1b182e;position:relative;animation:pn-slideUp .22s cubic-bezier(.2,.9,.3,1.1)}.pn-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--p-rose);color:#fff;border:2px solid transparent;border-radius:var(--p-pill);padding:9px 20px;font-size:14px;font-weight:700;line-height:1;cursor:pointer;font-family:inherit;box-shadow:var(--p-shadow-btn);transition:background .15s,transform .15s}.pn-btn:hover{background:#97251d}.pn-btn:active{transform:translateY(2px);box-shadow:0 0 #ac332a66}.pn-btn:focus-visible{outline:none;box-shadow:var(--p-shadow-btn),0 0 0 3px var(--p-rose-tint),0 0 0 5px var(--p-rose-tint-2)}.pn-btn-ghost{background:transparent;color:var(--p-rose);border-color:var(--p-rose);box-shadow:none}.pn-btn-ghost:hover{background:var(--p-rose-tint)}.pn-btn-ghost:active{transform:none}@keyframes pn-slideUp{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.pn-close{position:absolute;top:8px;right:10px;background:transparent;border:none;cursor:pointer;font-size:22px;line-height:1;color:var(--p-faint);padding:6px 10px;border-radius:8px}.pn-close:hover{color:var(--p-ink);background:var(--p-surface-4)}.pn-modal h3{margin:0 0 6px;font-size:17px;font-weight:700;color:var(--p-ink);line-height:1.35;padding-right:28px}.pn-sub{margin:0 0 16px;font-size:13.5px;color:var(--p-sub);line-height:1.45}.pn-form{display:grid;gap:14px}.pn-field{display:grid;gap:6px}.pn-field>span{font-size:12px;font-weight:600;color:var(--p-sub)}.pn-field input{padding:10px 12px;border-radius:var(--p-r-sm);border:1.5px solid var(--p-line);background:var(--p-surface);color:var(--p-ink);font-size:14px;font-family:inherit;transition:border-color .15s}.pn-field input:focus{outline:none;border-color:var(--p-rose)}.pn-avas{display:flex;gap:8px;flex-wrap:wrap}.pn-ava{width:46px;height:46px;border-radius:50%;border:2px solid var(--p-line);background:var(--p-surface-2);display:grid;place-items:center;cursor:pointer;font-size:18px;color:var(--p-ink);transition:border-color .15s,transform .15s}.pn-ava:hover{border-color:var(--p-rose-tint-2)}.pn-ava.on{border-color:var(--p-rose);background:var(--p-rose-tint);transform:scale(1.05)}.pn-err{margin:0;font-size:12.5px;color:var(--p-bad)}.pn-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}@media(max-width:420px){.pn-modal{padding:20px 18px 18px}.pn-ava{width:42px;height:42px}}.pn-modal-email{text-align:center}.pn-modal-email .pn-sub{margin-bottom:8px}.pn-modal-email .pn-hint{margin:0 0 16px;font-size:12.5px;color:var(--p-faint);line-height:1.45}.pn-ico{margin-bottom:8px}.pn-modal-email .pn-actions{justify-content:center}.pn-overlay .msym{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-flex;white-space:nowrap;direction:ltr;vertical-align:middle;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.pn-overlay .msym.fill{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.push-toast{--pt-surface: #FFFFFF;--pt-ink: #1F1B18;--pt-sub: #58413E;--pt-rose: #AC332A;--pt-rose-tint: #FFDAD5;--pt-line: #EAE1DB;position:fixed;left:16px;right:16px;bottom:16px;z-index:9998;max-width:420px;margin:0 auto;background:var(--pt-surface);color:var(--pt-ink);border:1px solid var(--pt-line);border-radius:16px;box-shadow:0 12px 36px #1f1b182e;padding:14px 16px;display:grid;gap:12px;animation:pn-slideUp .24s cubic-bezier(.2,.9,.3,1.1)}.push-toast-body{display:flex;align-items:flex-start;gap:12px}.push-toast-body .msym{font-family:Material Symbols Outlined;font-size:26px;line-height:1;color:var(--pt-rose);font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24;flex:none}.push-toast-txt{display:grid;gap:2px}.push-toast-txt b{font-size:14.5px;font-weight:700}.push-toast-txt span{font-size:13px;color:var(--pt-sub);line-height:1.4}.push-toast-actions{display:flex;gap:8px;justify-content:flex-end}.push-toast-actions button{font-family:inherit;font-size:13.5px;font-weight:700;cursor:pointer;padding:8px 16px;border-radius:999px;border:1.5px solid transparent;line-height:1}.push-toast-later{background:transparent;color:var(--pt-sub)}.push-toast-later:hover{background:#f0e6e1}.push-toast-on{background:var(--pt-rose);color:#fff}.push-toast-on:hover{background:#97251d}.push-toast-on:disabled{opacity:.7;cursor:default}.badge-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,24px);z-index:9998;display:flex;align-items:center;gap:12px;max-width:360px;padding:12px 18px 12px 12px;background:#fff;color:#1f1b18;border:1px solid #EAE1DB;border-radius:16px;box-shadow:0 14px 40px #1f1b1833;opacity:0;transition:transform .34s cubic-bezier(.2,.9,.3,1.1),opacity .34s}.badge-toast.show{transform:translate(-50%);opacity:1}@media(prefers-reduced-motion:reduce){.badge-toast{transition:opacity .2s;transform:translate(-50%)}}.badge-toast img{width:52px;height:52px;object-fit:contain;flex:none}.badge-toast-txt{display:grid;gap:2px}.badge-toast-txt b{font-size:14.5px;font-weight:800;color:#ac332a}.badge-toast-txt span{font-size:13px;color:#58413e}.page .acc-pulse{animation:acc-pulse .8s ease-in-out 3;box-shadow:0 0 0 0 var(--p-rose-tint);border-radius:var(--p-r)}@keyframes acc-pulse{0%,to{box-shadow:0 0 0 0 var(--p-rose-tint)}50%{box-shadow:0 0 0 8px var(--p-rose-tint)}}@media(min-width:920px){.page .acc-wrap{max-width:1040px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"tabs tabs" "head head" "left right" "actions actions";column-gap:20px;align-items:start}.page .acc-wrap>.acc-tabs-nav{grid-area:tabs}.page .acc-head{grid-area:head}.page .acc-wrap>.acc-sec:first-of-type{grid-area:left}.page .acc-col-r{grid-area:right;display:flex;flex-direction:column}.page .acc-actions{grid-area:actions;padding-top:8px}.page .acc-col-r .acc-sec{margin-bottom:16px}.page .acc-col-r .acc-sec:last-child{margin-bottom:0}}body:has(.stage-wrap) .cs-root{display:none}.cs-root{--p-rose: #AC332A;--p-rose-tint: #FFDAD5;--p-ink: #1F1B18;--p-sub: #58413E;--p-faint: #8A817C;--p-surface: #FFFFFF;--p-surface-4: #F0E6E1;--p-line: #EAE1DB;--p-r-lg: 24px;--p-ease: cubic-bezier(.22, .61, .36, 1);position:fixed;bottom:24px;right:24px;z-index:9998;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:var(--font-vn)}.cs-bubble{width:56px;height:56px;border-radius:50%;background:var(--p-rose);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #ac332a61,0 2px 6px #0000001a;position:relative;transition:transform .2s var(--p-ease),box-shadow .2s}.cs-bubble:hover{transform:scale(1.08);box-shadow:0 6px 20px #ac332a70,0 3px 8px #00000024}.cs-bubble:active{transform:scale(.94)}.cs-root .msym{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;line-height:1;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.cs-root .msym.fill{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}@keyframes cs-pulse{0%{box-shadow:0 4px 14px #ac332a61,0 0 #ac332a73}70%{box-shadow:0 4px 14px #ac332a61,0 0 0 14px #ac332a00}to{box-shadow:0 4px 14px #ac332a61,0 0 #ac332a00}}.cs-bubble.pulse{animation:cs-pulse .65s ease-out}.cs-badge{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;background:#e53935;color:#fff;border-radius:10px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #fff}.cs-panel{width:330px;background:var(--p-surface);border-radius:var(--p-r-lg);box-shadow:0 12px 40px #1f1b182e,0 4px 12px #1f1b1812;display:flex;flex-direction:column;overflow:hidden;max-height:min(500px,calc(100dvh - 110px))}@keyframes cs-slide-in{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:none}}.cs-panel.cs-open{animation:cs-slide-in .26s var(--p-ease) both}.cs-head{display:flex;align-items:center;gap:10px;padding:13px 14px 11px;background:var(--p-rose);color:#fff;flex-shrink:0}.cs-online-dot{width:9px;height:9px;border-radius:50%;background:#4caf50;border:1.5px solid rgba(255,255,255,.45);flex-shrink:0;transition:background .35s}.cs-online-dot.offline{background:#ffffff52}.cs-head-text{flex:1;min-width:0}.cs-head-title{font-weight:700;font-size:13.5px;line-height:1.2}.cs-head-sub{font-size:11px;opacity:.78;margin-top:1px}.cs-close-btn{background:none;border:none;color:#fff;cursor:pointer;padding:4px;opacity:.72;display:flex;align-items:center;border-radius:6px;transition:opacity .15s,background .15s}.cs-close-btn:hover{opacity:1;background:#ffffff26}.cs-msgs{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:10px;min-height:0}.cs-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--p-sub);gap:12px;padding:12px;font-size:13px;line-height:1.45}.cs-day-sep{text-align:center;font-size:11px;color:var(--p-faint);margin:2px 0;flex-shrink:0}.cs-msg{max-width:84%;display:flex;flex-direction:column;gap:2px}.cs-msg.cs-user{align-self:flex-end}.cs-msg.cs-admin{align-self:flex-start}.cs-msg-label{font-size:11px;color:var(--p-faint);padding:0 4px}.cs-bubble-msg{padding:8px 13px;border-radius:14px;font-size:13.5px;line-height:1.5;word-break:break-word;white-space:pre-wrap}.cs-user .cs-bubble-msg{background:var(--p-rose);color:#fff;border-bottom-right-radius:4px}.cs-admin .cs-bubble-msg{background:var(--p-surface-4);color:var(--p-ink);border-bottom-left-radius:4px}.cs-msg-time{font-size:10.5px;color:var(--p-faint);padding:0 4px}.cs-user .cs-msg-time{text-align:right}.cs-typing{align-self:flex-start;display:flex;align-items:center;gap:4px;padding:9px 14px;background:var(--p-surface-4);border-radius:14px 14px 14px 4px}.cs-typing span{width:6px;height:6px;background:var(--p-faint);border-radius:50%;animation:cs-dot 1.2s infinite}.cs-typing span:nth-child(2){animation-delay:.2s}.cs-typing span:nth-child(3){animation-delay:.4s}@keyframes cs-dot{0%,60%,to{transform:translateY(0);opacity:.55}30%{transform:translateY(-5px);opacity:1}}.cs-footer{border-top:1px solid var(--p-line);padding:10px 12px;display:flex;gap:8px;align-items:flex-end;flex-shrink:0;background:var(--p-surface)}.cs-input{flex:1;border:1.5px solid var(--p-line);border-radius:20px;padding:8px 14px;font-size:13.5px;font-family:inherit;resize:none;line-height:1.4;overflow-y:auto;outline:none;color:var(--p-ink);background:var(--p-surface);transition:border-color .15s;max-height:120px}.cs-input:focus{border-color:var(--p-rose)}.cs-input::placeholder{color:var(--p-faint)}.cs-send-btn{width:36px;height:36px;border-radius:50%;flex-shrink:0;background:var(--p-rose);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s,transform .15s}.cs-send-btn:not(:disabled):hover{transform:scale(1.08)}.cs-send-btn:not(:disabled):active{transform:scale(.94)}.cs-send-btn:disabled{opacity:.32;cursor:default}@media(max-width:480px){.cs-root{bottom:16px;right:16px}.cs-panel{width:calc(100vw - 32px)}}.fc-quiz-q{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 20px 16px;text-align:center}.fc-quiz-opts{display:flex;flex-direction:column;gap:10px;width:100%;padding:0 20px 16px}.fc-opt{width:100%;padding:13px 16px;text-align:left;border:1.5px solid var(--p-line);border-radius:12px;background:var(--p-surface);color:var(--p-ink);cursor:pointer;font-size:15px;font-family:inherit;display:flex;align-items:center;gap:10px;transition:border-color .15s,background .15s}.fc-opt:hover:not(:disabled){border-color:var(--p-rose);background:var(--p-bg)}.fc-opt-letter{width:26px;height:26px;border-radius:50%;background:var(--p-line);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;color:var(--p-sub)}.fc-opt.fc-opt-ok{border-color:#4caf50;background:#f0fff0}.fc-opt.fc-opt-ok .fc-opt-letter{background:#4caf50;color:#fff}.fc-opt.fc-opt-bad{border-color:var(--p-bad);background:#fff0f0}.fc-opt.fc-opt-bad .fc-opt-letter{background:var(--p-bad);color:#fff}.fc-quiz-prog{text-align:center;font-size:13px;color:var(--p-faint);padding:4px 0 16px}.rm-vocab-done{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--p-rose);color:#fff;border-radius:9px;font-size:10px;font-weight:700;margin-left:5px;vertical-align:middle}.vp-panel{position:fixed;top:0;right:0;bottom:0;width:300px;max-width:88vw;background:#fff;box-shadow:-4px 0 24px #0003;display:flex;flex-direction:column;z-index:210;transform:translate(100%);transition:transform .24s cubic-bezier(.4,0,.2,1)}.vp-panel.vp-open{transform:translate(0)}.vp-head{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid #eee;flex-shrink:0}.vp-head b{flex:1;font-size:14px;color:#1f1b18}.vp-count{font-size:12px;color:#888}.vp-body{overflow-y:auto;flex:1;padding:8px 0}.vp-word{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;transition:background .12s}.vp-word:hover{background:#f9f5f4}.vp-ko{font-size:18px;font-weight:700;color:#1f1b18;min-width:68px}.vp-detail{flex:1;display:flex;flex-direction:column;gap:1px}.vp-rom{font-size:11.5px;color:#888}.vp-vi{font-size:13px;color:#444}.vp-tick{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24;font-size:20px;line-height:1;color:#ccc;flex-shrink:0;transition:color .15s}.vp-word.vp-known .vp-tick{color:#4caf50}.vp-word.vp-known .vp-ko{color:var(--p-rose)}.cs-guest-area{padding:0;overflow-y:auto;display:flex;flex-direction:column}.cs-guest-form{padding:16px;display:flex;flex-direction:column;gap:10px}.cs-guest-desc{font-size:13px;color:var(--p-sub);margin:0;line-height:1.5}.cs-g-input{width:100%;padding:9px 12px;border:1.5px solid var(--p-line);border-radius:10px;font-size:13.5px;font-family:inherit;color:var(--p-ink);background:var(--p-surface);outline:none;box-sizing:border-box;transition:border-color .15s}.cs-g-input:focus{border-color:var(--p-rose)}.cs-g-input::placeholder{color:var(--p-faint)}.cs-g-body{resize:none}.cs-g-err{font-size:12px;color:var(--p-bad);margin:0}.cs-g-submit{width:100%;padding:10px;background:var(--p-rose);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;font-family:inherit;transition:opacity .15s}.cs-g-submit:hover:not(:disabled){opacity:.88}.cs-g-submit:disabled{opacity:.45;cursor:default}.cs-g-login-hint{text-align:center;font-size:12px;color:var(--p-faint)}.cs-g-login-hint a{color:var(--p-rose)}.cs-guest-sent{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:24px 20px;color:var(--p-sub);font-size:13px;line-height:1.5}.pn-link-btn{background:none;border:none;padding:0;color:var(--p-rose);cursor:pointer;text-decoration:underline;font:inherit}@media(prefers-reduced-motion:reduce){.cs-panel.cs-open,.cs-bubble.pulse{animation:none}.cs-typing span{animation:none;opacity:1}}.page .vh-shell{max-width:900px;margin:0 auto;padding:16px clamp(14px,4vw,24px) 64px}.page .vh-sfx-btn{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:transparent;border:0;color:var(--p-sub);cursor:pointer;transition:background .15s,color .15s}.page .vh-sfx-btn:hover{background:var(--p-surface-2);color:var(--p-rose)}.page .vh-sfx-btn .msym{font-size:22px}.page .vh-tabs{display:flex;gap:4px;background:var(--p-surface-2);padding:4px;border-radius:var(--p-pill)}.page .vh-tab{padding:7px 18px;border-radius:var(--p-pill);background:transparent;border:0;font:inherit;font-weight:600;font-size:14px;color:var(--p-sub);cursor:pointer;transition:background .15s,color .15s}.page .vh-tab.on{background:var(--p-surface);color:var(--p-rose-ink);box-shadow:var(--p-shadow-sm)}.page .vh-body{display:grid;gap:20px;padding-top:8px}.page .vh-section{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:18px 20px}.page .vh-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.page .vh-section-label{font-size:14px;font-weight:700;color:var(--p-sub);text-transform:uppercase;letter-spacing:.04em}.page .vh-sel-actions{display:flex;gap:8px}.page .vh-stats-bar{background:var(--p-surface-2);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:16px 20px;display:grid;gap:10px}.page .vh-stats-nums{display:flex;gap:20px;flex-wrap:wrap}.page .vh-stat{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--p-sub)}.page .vh-stat-n{font-family:var(--p-display);font-size:22px;font-weight:800}.page .vh-stat-ok .vh-stat-n{color:var(--p-teal)}.page .vh-stat-mid .vh-stat-n{color:var(--p-amber)}.page .vh-stat-bad .vh-stat-n{color:var(--p-bad)}.page .vh-prog-track{height:8px;width:100%;background:var(--p-surface-4);border-radius:var(--p-pill);overflow:hidden}.page .vh-prog-fill{height:100%;width:100%;background:var(--p-teal);border-radius:var(--p-pill);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-slow) var(--ease-quint)}.page .vh-nudge{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--p-rose-tint);border-radius:var(--p-r-lg);font-size:14px;color:var(--p-rose-ink);flex-wrap:wrap}.page .vh-nudge .msym{font-size:22px;flex:none}.page .vh-nudge span{flex:1;min-width:200px;line-height:1.4}.page .vh-chips{display:flex;flex-wrap:wrap;gap:8px}@keyframes vh-chip-in{0%{opacity:0;transform:scale(.88) translateY(6px)}to{opacity:1;transform:none}}.page .vh-chip-anim{animation:vh-chip-in .3s var(--p-ease) both}.page .vh-chip{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border-radius:var(--p-r-sm);background:var(--p-surface-2);border:1.5px solid var(--p-line);color:var(--p-sub);font:inherit;font-size:13px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.page .vh-chip:hover{border-color:var(--p-rose-tint-2);background:var(--p-bg)}.page .vh-chip.on{border-color:var(--p-rose);background:var(--p-rose-tint);color:var(--p-rose-ink)}.page .vh-chip-title{font-weight:700;font-size:13px}.page .vh-chip-prog{font-size:11px;color:var(--p-faint)}.page .vh-chip.on .vh-chip-prog{color:var(--p-rose-ink);opacity:.75}.page .vh-chip-badges{display:flex;gap:4px;margin-top:2px}.page .vh-chip-dot{font-size:10px;font-weight:700;padding:1px 5px;border-radius:var(--p-pill)}.page .vh-chip-dot.mid{background:#8454001f;color:var(--p-amber)}.page .vh-chip-dot.bad{background:#ba1a1a1a;color:var(--p-bad)}.page .vh-mode-row,.page .vh-filter-row{display:flex;gap:8px;flex-wrap:wrap}.page .vh-mode,.page .vh-filter{padding:8px 18px;border-radius:var(--p-pill);background:var(--p-surface-2);border:1.5px solid var(--p-line);color:var(--p-sub);font:inherit;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:border-color .15s,background .15s,color .15s}.page .vh-mode:hover,.page .vh-filter:hover{border-color:var(--p-rose-tint-2)}.page .vh-mode.on,.page .vh-filter.on{border-color:var(--p-rose);background:var(--p-rose-tint);color:var(--p-rose-ink)}.page .vh-mode .msym{font-size:18px}.page .vh-course-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.page .vh-cf{padding:6px 14px;border-radius:var(--p-pill);background:var(--p-surface-2);border:1.5px solid var(--p-line);color:var(--p-sub);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.page .vh-cf:hover{border-color:var(--p-rose-tint-2)}.page .vh-cf.on{border-color:var(--p-rose);background:var(--p-rose);color:#fff}.page .vh-start-row{display:flex;justify-content:center;padding-top:4px}.page .vh-start-btn{padding:16px 40px;font-size:17px}.page .vh-empty-msg{text-align:center;color:var(--p-bad);font-size:14px;background:#ba1a1a0f;border-radius:var(--p-r);padding:10px 16px;margin:0}.page .vh-hist-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.page .vh-select{flex:1;min-width:140px;padding:10px 14px;border-radius:var(--p-r);border:1.5px solid var(--p-line-2);background:var(--p-surface);color:var(--p-ink);font:inherit;font-size:14px}.page .vh-search{flex:1;min-width:180px;padding:10px 14px;border-radius:var(--p-r);border:1.5px solid var(--p-line-2);background:var(--p-surface);color:var(--p-ink);font:inherit;font-size:14px}.page .vh-table{width:100%;border-collapse:collapse;font-size:14px}.page .vh-table th{text-align:left;padding:10px 12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--p-sub);border-bottom:2px solid var(--p-line)}.page .vh-table td{padding:10px 12px;border-bottom:1px solid var(--p-line);vertical-align:middle}.page .vh-table tr:last-child td{border-bottom:0}.page .vh-table tr:hover td{background:var(--p-surface-2)}.page .vh-td-ko{font-family:var(--font-kr);font-weight:700;font-size:16px;color:var(--p-ink)}.page .vh-td-lesson{color:var(--p-sub);font-size:13px}.page .vh-td-time{color:var(--p-faint);font-size:13px;white-space:nowrap}.page .vh-badge{display:inline-block;padding:2px 10px;border-radius:var(--p-pill);font-size:11px;font-weight:700}.page .vh-badge-ok{background:#006b5b1f;color:var(--p-teal)}.page .vh-badge-mid{background:#8454001a;color:var(--p-amber)}.page .vh-badge-bad{background:#ba1a1a1a;color:var(--p-bad)}.page .vh-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px}.page .vh-page-info{color:var(--p-sub);font-size:13px}.page .vh-empty{display:grid;justify-items:center;gap:12px;padding:48px 0;text-align:center;color:var(--p-sub)}.page .vh-empty p{margin:0;font-size:15px;line-height:1.6}@media(max-width:600px){.page .vh-stats-nums{gap:14px}.page .vh-hist-filter{flex-direction:column}.page .vh-table th:nth-child(2),.page .vh-table td:nth-child(2){display:none}}.page .acc-hero-img{display:block;width:150px;height:150px;margin:0 auto 4px}.page .dash-hero-img{width:96px;height:96px;flex:none}.page .dash-empty{display:grid;justify-items:center;gap:10px;padding:16px 0}@media(max-width:720px){.page .dash-hero-img{display:none}}.page .lb-row,.page .dash-stat,.page .dash-lc,.page .lt-lesson,.page .say-card{animation:card-fade-up .4s var(--p-ease) both}.page .lb-row:nth-child(2),.page .dash-stat:nth-child(2),.page .dash-lc:nth-child(2),.page .lt-lesson:nth-child(2),.page .say-card:nth-child(2){animation-delay:.06s}.page .lb-row:nth-child(3),.page .dash-stat:nth-child(3),.page .lt-lesson:nth-child(3),.page .say-card:nth-child(3){animation-delay:.12s}.page .lb-row:nth-child(4),.page .dash-stat:nth-child(4),.page .lt-lesson:nth-child(4),.page .say-card:nth-child(4){animation-delay:.18s}.page .lb-row:nth-child(5),.page .lt-lesson:nth-child(5){animation-delay:.24s}.page .lb-row:nth-child(6),.page .lt-lesson:nth-child(6){animation-delay:.3s}.page .fc-quiz-q{animation:card-fade-up .3s var(--p-ease) both}@media(prefers-reduced-motion:reduce){.page .lb-row,.page .dash-stat,.page .dash-lc,.page .lt-lesson,.page .say-card,.page .fc-quiz-q{animation:none}}.page .ev-wrap{max-width:1280px;margin:0 auto;padding:0 24px 64px}.page .ev-loading{text-align:center;color:var(--p-sub);padding:48px 0}.page .ev-hero{text-align:center;padding:28px 0 20px}.page .ev-hero-img{width:min(380px,82%);height:auto;margin:0 auto 6px;display:block;animation:heroFloat 6s ease-in-out infinite}.page .ev-hero h1{font-size:clamp(26px,5vw,36px);color:var(--p-ink);letter-spacing:-.02em}.page .ev-hero p{color:var(--p-sub);font-size:16px;line-height:1.6;margin:10px auto 0;max-width:40ch}.page .ev-rules{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:24px;margin:16px 0}.page .ev-rules-body{display:flex;align-items:center;gap:20px}.page .ev-rules-text{flex:1;min-width:0}.page .ev-rules-img{width:130px;height:130px;flex-shrink:0}.page .ev-rules h2{font-size:18px;color:var(--p-ink);margin-bottom:12px}.page .ev-steps{margin:0;padding-left:20px;color:var(--p-sub);line-height:1.9}@media(max-width:560px){.page .ev-rules-body{flex-direction:column-reverse;gap:8px}.page .ev-rules-img{width:110px;height:110px}}.page .ev-steps b{color:var(--p-ink)}.page .ev-req{width:100%;border-collapse:collapse;margin-top:16px;font-size:15px}.page .ev-req th,.page .ev-req td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--p-line)}.page .ev-req th{color:var(--p-sub);font-weight:600;font-size:13px}.page .ev-req b{color:var(--p-rose)}.page .ev-cta{text-align:center;margin:20px 0}.page .ev-note{background:var(--p-surface-2);border-radius:var(--p-r-sm);padding:14px 16px;color:var(--p-sub);margin:16px 0}.page .ev-join{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:24px;margin:16px 0}.page .ev-plan{color:var(--p-ink);font-size:15px;margin-bottom:4px}.page .ev-pick-count{color:var(--p-sub);font-size:14px;margin-bottom:14px}.page .ev-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.page .ev-opt{display:flex;flex-direction:column;gap:3px;text-align:left;cursor:pointer;background:var(--p-surface-2);border:2px solid var(--p-line);border-radius:var(--p-r-sm);padding:12px 14px;transition:border-color .15s,background .15s}.page .ev-opt{transition:border-color .15s var(--p-ease),background .15s,transform .15s var(--p-ease)}.page .ev-opt:hover{border-color:var(--p-rose-tint-2);transform:translateY(-3px)}.page .ev-opt.on{border-color:var(--p-rose);background:var(--p-rose-tint)}.page .ev-opt-title{font-weight:700;color:var(--p-ink);font-size:14.5px}.page .ev-opt-meta{color:var(--p-sub);font-size:12.5px}.page .ev-status{border-radius:var(--p-r-sm);padding:14px 18px;margin:16px 0;font-weight:600;line-height:1.55}.page .ev-st-active{background:var(--p-amber-tint);color:var(--p-amber)}.page .ev-st-ok{background:var(--p-teal-fixed);color:var(--p-teal)}.page .ev-st-exp{background:var(--p-surface-4);color:var(--p-sub)}.page .ev-meter{background:var(--p-rose-tint);border:1px solid var(--p-rose-tint-2);border-radius:var(--p-r-lg);padding:20px 24px;margin:16px 0}.page .ev-meter-head{display:flex;justify-content:space-between;align-items:baseline;color:var(--p-rose-ink);font-weight:700;font-size:15px;margin-bottom:10px}.page .ev-meter-head b{font-size:22px}.page .ev-meter-bar{height:16px;border-radius:var(--p-pill);background:#fff;overflow:hidden}.page .ev-meter-fill{height:100%;border-radius:var(--p-pill);background:linear-gradient(90deg,var(--p-rose),#FF6F61);transition:width .6s var(--p-ease)}.page .ev-meter-sub{margin:10px 0 0;font-size:13.5px;color:var(--p-rose-ink)}.page .ev-meter-sub b{font-weight:800}.page .ev-progress-h{font-size:14px;color:var(--p-sub);margin:0 0 14px;font-weight:600}.page .ev-progress{background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);padding:24px}.page .ev-bar-row{margin-bottom:18px}.page .ev-bar-row:last-child{margin-bottom:0}.page .ev-bar-head{display:flex;justify-content:space-between;font-size:14px;color:var(--p-ink);margin-bottom:6px}.page .ev-bar{height:10px;border-radius:var(--p-pill);background:var(--p-surface-4);overflow:hidden}.page .ev-bar-fill{height:100%;border-radius:var(--p-pill);background:var(--p-rose-2);transition:width .4s var(--p-ease)}@media(max-width:600px){.page .ev-opts{grid-template-columns:1fr}}.page .ev-banner{position:relative;display:flex;align-items:center;gap:8px;max-width:1080px;margin:16px auto 0;padding:12px 16px;background:linear-gradient(100deg,var(--p-rose),#FF6F61);border-radius:var(--p-r-lg);color:#fff;box-shadow:0 8px 24px #ac332a38}.page .ev-banner-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;color:#fff;text-decoration:none}.page .ev-banner-ico{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#ffffff38;font-size:22px}.page .ev-banner-text{display:flex;flex-direction:column;line-height:1.25;min-width:0}.page .ev-banner-text b{font-size:15.5px;font-weight:800}.page .ev-banner-text span{font-size:13px;opacity:.92;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page .ev-banner-cta{display:inline-flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0;background:#fff;color:var(--p-rose);font-weight:700;font-size:13.5px;padding:7px 14px;border-radius:var(--p-pill)}.page .ev-banner-main:hover .ev-banner-cta{background:#fff4f2}.page .ev-banner-x{background:transparent;border:0;color:#ffffffd9;font-size:15px;cursor:pointer;padding:4px 6px;line-height:1;flex-shrink:0}.page .ev-banner-x:hover{color:#fff}@media(max-width:600px){.page .ev-banner{margin:12px 12px 0}.page .ev-banner-text span{white-space:normal}.page .ev-banner-cta{font-size:12.5px;padding:6px 12px}}.page .ev-terms{background:var(--p-surface-2);border-radius:var(--p-r-lg);padding:22px 24px;margin:16px 0}.page .ev-terms h2{font-size:17px;color:var(--p-ink);margin-bottom:4px}.page .ev-terms h3{font-size:14.5px;color:var(--p-rose-ink);margin:0 0 6px}.page .ev-terms ul{margin:0;padding-left:20px;color:var(--p-sub);line-height:1.65;font-size:13.5px}.page .ev-terms li{margin-bottom:6px}.page .ev-terms p{color:var(--p-sub);font-size:13.5px;line-height:1.6;margin:6px 0}.page .ev-terms b{color:var(--p-ink)}.page .ev-terms-cols{columns:2;column-gap:40px;margin-top:12px}.page .ev-term-block{break-inside:avoid;margin-bottom:16px}@media(max-width:760px){.page .ev-terms-cols{columns:1}}.page .vip-event-note{display:flex;align-items:center;gap:10px;text-decoration:none;background:linear-gradient(100deg,var(--p-rose),#FF6F61);color:#fff;border-radius:var(--p-r-sm);padding:11px 14px;margin:4px 0 14px;font-size:13.5px;line-height:1.45}.page .vip-event-note .ven-ico{font-size:20px;flex-shrink:0}.page .vip-event-note b{font-weight:800}.page .ev-wrap>section,.page .ev-wrap>.ev-status,.page .ev-wrap>.ev-cta{animation:card-fade-up .5s var(--p-ease) both}.page .ev-wrap>*:nth-child(2){animation-delay:.05s}.page .ev-wrap>*:nth-child(3){animation-delay:.12s}.page .ev-wrap>*:nth-child(4){animation-delay:.19s}.page .ev-wrap>*:nth-child(5){animation-delay:.26s}.page .ev-wrap>*:nth-child(6){animation-delay:.33s}.page .ev-rules-img{animation:heroFloat 5.5s ease-in-out infinite}.page .ev-state-img{display:block;width:150px;height:150px;margin:4px auto 0}.page .vip-hero-img{display:block;width:120px;height:120px;margin:0 auto 4px}@media(prefers-reduced-motion:reduce){.page .ev-hero-img,.page .ev-rules-img,.page .ev-wrap>section,.page .ev-wrap>.ev-status,.page .ev-wrap>.ev-cta{animation:none}}.page .sch-wrap{position:relative;display:flex;align-items:center}.page .sch-btn{display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;cursor:pointer;color:var(--p-sub);transition:background .15s,color .15s}.page .sch-btn:hover{background:var(--p-rose-tint);color:var(--p-rose)}.page .sch-btn .msym{font-size:20px}.page .sch-bar{display:flex;align-items:center;gap:4px;height:38px;width:264px;padding:0 6px 0 10px;background:var(--p-surface);border:1.5px solid var(--p-rose);border-radius:var(--p-pill);box-shadow:0 0 0 3px var(--p-rose-tint)}.page .sch-bar-icon{font-size:18px;color:var(--p-rose);flex-shrink:0;line-height:1}.page .sch-input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-size:14px;font-family:var(--font-vn);color:var(--p-ink)}.page .sch-input::placeholder{color:var(--p-faint)}.page .sch-close{display:grid;place-items:center;width:26px;height:26px;flex-shrink:0;border:none;border-radius:50%;background:var(--p-surface-4);cursor:pointer;color:var(--p-sub);transition:background .12s,color .12s}.page .sch-close:hover{background:var(--p-rose-tint);color:var(--p-rose)}.page .sch-close .msym{font-size:16px}.page .sch-drop{position:absolute;top:calc(100% + 8px);left:0;z-index:500;min-width:340px;max-width:420px;max-height:480px;overflow-y:auto;background:var(--p-surface);border:1px solid var(--p-line);border-radius:var(--p-r-lg);box-shadow:var(--p-shadow);overscroll-behavior:contain}.page .sch-empty{padding:1rem 1.1rem;color:var(--p-faint);font-size:14px}.page .sch-empty em{font-style:normal;color:var(--p-ink);font-weight:600}.page .sch-group{display:block;padding:.65rem 1rem;border-bottom:1px solid var(--p-line);text-decoration:none;color:inherit;transition:background .12s}.page .sch-group:last-child{border-bottom:none}.page .sch-group:hover{background:var(--p-surface-2)}.page .sch-group-head{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap;margin-bottom:.35rem}.page .sch-lesson-ko{font-family:var(--font-kr);font-weight:700;font-size:.95rem;color:var(--p-rose)}.page .sch-lesson-vi{font-weight:700;font-size:.88rem;color:var(--p-ink)}.page .sch-course{font-size:.75rem;color:var(--p-faint);margin-left:auto;white-space:nowrap}.page .sch-matches{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}.page .sch-match{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--p-sub);min-height:1.4em}.page .sch-chip{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:18px;border-radius:4px;font-size:10px;font-weight:700}.page .sch-chip.vocab{background:#ac332a1a;color:var(--p-rose)}.page .sch-chip.grammar{background:#8454001f;color:var(--p-amber)}.page .sch-match-label{font-weight:700;color:var(--p-ink)}.page .sch-match-label.ko{font-family:var(--font-kr);font-size:.9rem}.page .sch-match-sub{color:var(--p-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}@media(max-width:760px){.page .sch-bar{width:200px}.page .sch-drop{left:auto;right:0;min-width:280px;max-width:calc(100vw - 2rem)}}.page.ld-page{background:var(--p-bg)}.ld-main{max-width:860px;margin:0 auto;padding:1.5rem 1rem 4rem}.ld-crumb{font-size:13px;color:var(--p-faint);margin-bottom:1.5rem}.ld-crumb a{color:var(--p-rose);text-decoration:none;font-weight:600}.ld-crumb a:hover{text-decoration:underline}.ld-hero{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:2px solid var(--p-line)}.ld-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--p-rose);margin:0 0 .5rem}.ld-title{font-size:2rem;font-weight:800;margin:0 0 .5rem;line-height:1.2;font-family:var(--p-display)}.ld-title span[lang=ko]{font-family:var(--font-kr)}.ld-sub{color:var(--p-sub);margin:0 0 .75rem;font-size:1rem;line-height:1.5}.ld-stats{font-size:13px;color:var(--p-faint);font-weight:600;margin:0 0 1.25rem}.ld-section{margin-bottom:2.5rem}.ld-section-title{font-size:1.25rem;font-weight:800;margin:0 0 1.25rem;border-left:4px solid var(--p-rose-2);padding-left:.7rem;color:var(--p-ink);font-family:var(--p-display)}.ld-group{margin-bottom:1.75rem}.ld-group-title{font-size:.93rem;font-weight:700;margin:0 0 .6rem;color:var(--p-sub);display:flex;align-items:center;gap:.4rem}.ld-group-title span[lang=ko]{font-family:var(--font-kr)}.ld-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--p-r)}.ld-vocab{width:100%;border-collapse:collapse;font-size:.93rem;background:var(--p-surface)}.ld-vocab th{text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--p-faint);padding:.55rem .75rem;border-bottom:2px solid var(--p-line);white-space:nowrap}.ld-vocab td{padding:.6rem .75rem;border-bottom:1px solid var(--p-line);vertical-align:middle}.ld-vocab tr:last-child td{border-bottom:none}.ld-vocab tr:hover td{background:var(--p-surface-2)}.ld-vocab .ld-ko{font-family:var(--font-kr);font-weight:700;font-size:1.05rem;color:var(--p-rose)}.ld-vocab .ld-rom{color:var(--p-faint);font-style:italic;font-size:.85rem}.ld-vocab .ld-hv{font-size:.82rem;color:var(--p-sub)}.ld-hanja{font-weight:600;margin-right:.2em}.ld-gram{display:flex;gap:.9rem;margin-bottom:1.25rem;align-items:flex-start}.ld-gram-num{flex-shrink:0;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--p-rose);color:#fff;font-weight:800;font-size:.85rem;display:grid;place-items:center}.ld-gram-body{flex:1}.ld-gram-pattern{font-weight:800;font-size:1.05rem;margin:0 0 .3rem;color:var(--p-ink);font-family:var(--font-kr)}.ld-gram-meaning{color:var(--p-sub);font-size:.9rem;margin:0 0 .55rem;line-height:1.55}.ld-gram-ex{background:var(--p-surface-2);border-radius:var(--p-r-sm);padding:.5rem .75rem;display:flex;flex-direction:column;gap:.2rem}.ld-gram-ex .ld-ko{font-family:var(--font-kr);font-weight:700;color:var(--p-ink);font-size:.95rem}.ld-gram-ex .ld-rom-small{font-size:.85rem;color:var(--p-sub)}.ld-cta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2.5rem;padding-top:2rem;border-top:2px solid var(--p-line)}@media(max-width:600px){.ld-title{font-size:1.55rem}.ld-vocab th,.ld-vocab td{padding:.5rem .55rem;font-size:.85rem}.ld-cta{flex-direction:column}}
