.study-achievements{margin-top:26px;padding-top:22px;border-top:1px solid var(--line,#ddd)}.achievement-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.achievement-heading h3{margin:0;font-size:17px}.achievement-heading>span{font-size:13px;opacity:.65}.study-medal{width:44px;height:50px;flex-shrink:0;color:#9b7534;--medal-fill:#fff0c4;--medal-ribbon:#edb1ca}.earned-medals{display:flex;gap:20px;list-style:none;padding:0;flex-wrap:wrap}.earned-medals li{display:flex;align-items:center;gap:8px;font-size:13px}.achievement-details summary{cursor:pointer;font-size:14px}.achievement-details>p{font-size:13px;opacity:.7;line-height:1.6}.challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0}.challenge-grid li{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line,#ddd);border-radius:10px}.challenge-grid p{font-size:12px;line-height:1.6;margin:5px 0}.challenge-grid strong{font-size:14px}.challenge-grid span{font-size:12px}.challenge-grid progress{display:block;width:100%;height:5px;margin-top:7px;accent-color:#cc6c99}.challenge-grid .is-locked .study-medal{filter:grayscale(1);opacity:.4}.level-preview-button{margin-top:14px;font-size:13px;padding:8px 12px!important}.learning-celebration{box-sizing:border-box;width:min(390px,calc(100vw - 32px));border:1px solid #e8c9d6;border-radius:20px;padding:34px 28px 24px;text-align:center;background:#fffcfd;color:#352d32;box-shadow:0 16px 70px #0003}.learning-celebration::backdrop{background:#17101d55}.celebration-close{position:absolute;right:12px;top:8px;border:0!important;background:transparent!important;color:inherit!important;font-size:24px;padding:4px 8px!important}.celebration-eyebrow{font-size:12px;color:#87717b;margin:0 0 24px}.celebration-level{font-size:46px;font-weight:800;letter-spacing:-2px;color:#bb5787}.learning-celebration h2{font-size:23px;margin:14px 0 10px}.learning-celebration>p:not(.celebration-eyebrow){font-size:14px;line-height:1.7}.celebration-xp{display:inline-block;background:#fae7ef;color:#99456c;padding:7px 12px;border-radius:7px;font-size:13px}.celebration-medals{margin-top:18px}.celebration-medals>div{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px}.celebration-continue{display:block;width:100%;margin-top:24px;padding:12px!important;background:#c36692!important;color:white!important;border:0!important;border-radius:9px}.learning-celebration small{display:block;margin-top:10px;opacity:.5;font-size:11px}.online-wrong-rate{font-size:12px;line-height:1.7;color:var(--muted,#777);margin-top:8px}.online-stats-source{font-size:12px;line-height:1.7;padding:12px;border-top:1px solid var(--line,#ddd)}html[data-theme=dark] .learning-celebration{background:#222023;color:#eee;border-color:#59414e}html[data-theme=dark] .celebration-eyebrow{color:#c6aeb9}@media(max-width:560px){.challenge-grid{grid-template-columns:1fr}.achievement-heading{align-items:flex-start}}
/* A short, quiet celebration with a luminous level emblem. */
.learning-celebration{width:min(430px,calc(100vw - 28px));max-height:92dvh;overflow:auto;padding:30px 30px 25px;border:1px solid #f0ccdd;border-radius:26px;background:radial-gradient(ellipse at 50% 20%,#ffe5ee 0,transparent 55%),linear-gradient(145deg,#fffdf7,#fff7fc);box-shadow:0 0 0 5px #ffffff33,0 24px 100px #42132f44;animation:celebration-enter .45s cubic-bezier(.2,.8,.2,1) both}.learning-celebration::backdrop{background:#23152588;backdrop-filter:blur(5px)}.celebration-eyebrow{letter-spacing:.03em;margin-bottom:12px;font-size:11px}.celebration-emblem{width:200px;height:194px;margin:0 auto;position:relative;display:grid;place-items:center}.celebration-level{box-sizing:border-box;width:142px;height:142px;display:flex;align-items:baseline;justify-content:center;gap:6px;padding-top:30px;border-radius:50%;color:#9b3c6a;background:linear-gradient(145deg,#fffdf1,#ffe9f2 60%,#eebbd2);border:1px solid #fff9;box-shadow:inset 0 2px 3px #fff,inset 0 -6px 12px #d697b733,0 14px 35px #bf6b9430;position:relative;z-index:1;animation:level-rise .65s .12s both}.celebration-level span{font-size:19px;font-weight:700;letter-spacing:-1px}.celebration-level strong{font-size:70px;font-weight:800;line-height:1;letter-spacing:-4px}.celebration-orbit{position:absolute;inset:13px;border:1px solid #e3b4cc;border-radius:50%;transform:rotate(-22deg) scaleY(.86)}.celebration-orbit:before{content:'';position:absolute;inset:9px;border:1px dashed #e4b6cd;border-radius:50%;opacity:.5}.celebration-spark{position:absolute;font-size:27px;color:#c47c9f;z-index:2;animation:spark-in .7s .25s both}.spark-one{left:9px;top:30px;color:#c89c47}.spark-two{right:6px;top:60px;font-size:34px}.spark-three{right:27px;bottom:12px;font-size:18px;color:#c89c47}.learning-celebration h2{font-size:30px;letter-spacing:-1px;margin:2px 0 6px;font-weight:800}.learning-celebration>p:not(.celebration-eyebrow){margin:8px 0 14px;color:#7c6571;font-size:13px}.celebration-xp{font-weight:700;border:1px solid #eed1df;background:#fff9fc;padding:7px 16px}.celebration-step{display:flex;align-items:center;justify-content:center;gap:12px;margin:22px 0 0;font-size:13px;color:#a18b96}.celebration-step strong{color:#a54774}.celebration-step-line{height:3px;width:110px;border-radius:3px;background:#efd6e2;position:relative;overflow:hidden}.celebration-step-line:after{content:'';display:block;height:100%;background:linear-gradient(90deg,#e2a0c0,#b65083);animation:level-fill .85s .25s both;transform-origin:left}.celebration-continue{background:linear-gradient(110deg,#b55783,#ce7ba3)!important;box-shadow:0 5px 15px #b4548025;font-weight:700}.celebration-close{opacity:.7}.celebration-close:focus-visible{outline:2px solid #cf86a8;outline-offset:0;border-radius:50%}.learning-celebration>.study-medal{width:100px;height:122px;margin:15px auto;filter:drop-shadow(0 8px 12px #a9785630);animation:level-rise .65s both}.earned-medals .study-medal{width:44px;height:54px}.celebration-medals .study-medal{width:36px;height:44px}html[data-theme=dark] .learning-celebration{background:radial-gradient(ellipse at 50% 20%,#4a2946 0,transparent 60%),linear-gradient(145deg,#24212c,#1b1c26);border-color:#74536b;box-shadow:0 0 0 5px #ffffff05,0 24px 100px #0008}html[data-theme=dark] .celebration-level{background:linear-gradient(145deg,#ffe9f0,#e5b0ce 65%,#ad729f);color:#69355d;box-shadow:inset 0 2px 3px #fff8,0 0 45px #efb6df25}html[data-theme=dark] .learning-celebration>p:not(.celebration-eyebrow){color:#c4aebb}html[data-theme=dark] .celebration-orbit{border-color:#966783}html[data-theme=dark] .celebration-xp{color:#f4c7df;background:#4b3045;border-color:#755069}html[data-theme=dark] .celebration-step strong{color:#f0b7d5}html[data-theme=dark] .celebration-step-line{background:#51364b}@keyframes celebration-enter{from{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:none}}@keyframes level-rise{from{opacity:0;transform:translateY(10px) scale(.8)}to{opacity:1;transform:none}}@keyframes spark-in{from{opacity:0;transform:scale(.3) rotate(-35deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes level-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.learning-celebration,.celebration-level,.celebration-spark,.learning-celebration>.study-medal,.celebration-step-line:after{animation:none}}@media(max-height:650px){.celebration-emblem{height:154px}.learning-celebration{padding:24px}.celebration-step{margin-top:16px}.celebration-continue{margin-top:16px}}
.celebration-close{display:grid;place-items:center;width:34px!important;height:34px!important;min-height:0!important;padding:0!important;line-height:1!important;right:12px;top:12px}
.challenge-difficulty{margin-top:24px}.challenge-difficulty h4{display:flex;align-items:center;gap:10px;font-size:15px;border-left:3px solid #8eab95;padding-left:10px;margin-bottom:12px}.challenge-difficulty h4 small{font-size:11px;font-weight:400;opacity:.6}.challenge-difficulty[data-difficulty="보통"] h4{border-color:#7899bd}.challenge-difficulty[data-difficulty="어려움"] h4{border-color:#b18bbb}.challenge-difficulty[data-difficulty="최종 목표"] h4{border-color:#c69a46}.challenge-grid li>div{min-width:0;flex:1}.challenge-grid .study-medal{width:48px;height:60px}.challenge-grid progress{max-width:100%}
