@keyframes blink{50%{opacity:0}}@font-face{font-family:MaruBuri;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff2);font-weight:300;font-display:swap}@font-face{font-family:OngleipParkDahyeon;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/2411-3@1.0/Ownglyph_ParkDaHyun.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:NanumSquareNeo;src:url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-aLt.woff2);font-weight:700;font-display:swap}:root{--color-bg:#f1e4d2;--color-text:#a28f79;--color-correct:#1e3a5f;--color-incorrect:#d32f2f;--color-untyped:#6f8cdc;--color-cursor:#1e3a5f;--color-composing:#0b2240;--font-body:"MaruBuri"}body{background-color:var(--color-bg);color:var(--color-correct)}*{font-family:var(--font-body)}#mainBody{margin:50px;padding:20px}.bookText{text-align:center;font-size:3rem}.verseNum{font-size:1.5rem}.bibText{word-break:keep-all;font-size:2rem}.paletteGrid{flex-wrap:wrap;gap:16px;display:flex}.paletteCard{cursor:pointer;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:14px;min-width:220px;padding:18px 20px;display:flex}.paletteCard--selected{border-color:var(--color-text)}.paletteName{font-size:1.1rem;font-weight:700}.paletteSwatches{justify-content:center;align-items:flex-start;gap:18px;display:flex}.paletteSwatch{flex-direction:column;align-items:center;gap:6px;display:flex}.paletteSwatchCircle{border:1px solid #00000026;border-radius:50%;width:28px;height:28px}.paletteSwatchLabel{opacity:.75;font-size:.7rem}.fontPicker{flex-direction:column;gap:16px;min-width:260px;display:flex}.fontPickerLabel{text-transform:uppercase;letter-spacing:.05em;opacity:.7;flex-direction:column;gap:4px;font-size:.75rem;display:flex}.fontPickerLabel select{border:1px solid var(--color-text);background:var(--color-bg);color:var(--color-text);cursor:pointer;text-transform:none;letter-spacing:normal;border-radius:6px;padding:6px 10px;font-size:1.1rem}.fontSample{border:1px solid var(--color-text);border-radius:10px;padding:16px 20px}.fontSampleText{white-space:pre-line;margin:0 0 16px;font-size:1.15rem;line-height:1.6}.fontSampleText:last-child{margin-bottom:0}.themeShowcase{border-top:1px solid var(--color-text);margin-top:64px;padding-top:40px}.themeShowcaseTitle{text-align:center;margin-bottom:32px;font-size:1.75rem}.themeShowcaseColumns{flex-wrap:wrap;justify-content:center;gap:48px;display:flex}.themeShowcaseColumn{flex:320px;max-width:480px}.themeShowcaseSubtitle{text-align:center;margin-bottom:16px;font-size:1.1rem}#mainBody{max-width:900px;margin:0 auto}.authBar{z-index:10;align-items:center;gap:12px;font-size:.95rem;display:flex;position:fixed;top:16px;right:24px}.authBarLink{color:var(--color-text);text-decoration:none}.authBarLink:hover{text-decoration:underline}.authBarSignOut{border:1px solid var(--color-text);color:var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:.85rem}.authBarSignOut:hover{background:var(--color-text);color:var(--color-bg)}.landingHeader{text-align:center;margin-bottom:40px}.landingTitle{margin-bottom:8px;font-size:3rem}.landingSubtitle{opacity:.75;font-size:1.1rem}.languagePick{justify-content:center;gap:20px;margin-bottom:48px;display:flex}.languagePickButton{border:2px solid var(--color-text);color:var(--color-text);border-radius:10px;padding:14px 36px;font-size:1.3rem;text-decoration:none;transition:background-color .15s,color .15s}.languagePickButton:hover{background:var(--color-text);color:var(--color-bg)}.bookLists{flex-wrap:wrap;justify-content:center;gap:64px;margin-bottom:24px;display:flex}.bookListColumn{min-width:200px}.bookListTitle{text-align:center;margin-bottom:12px;font-size:1.2rem}.bookList{flex-direction:column;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.bookListLink{color:var(--color-text);font-size:1.1rem;text-decoration:none}.bookListLink:hover{text-decoration:underline}.landingFooter{text-align:center;border-top:1px solid var(--color-text);margin-top:48px;padding-top:24px;font-size:.9rem}.landingFooter a{color:var(--color-text)}.bookChapterSelector{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.selectField{flex-direction:column;gap:4px;min-width:160px;display:flex}.selectField--narrow{min-width:90px}.selectLabel{letter-spacing:.05em;text-transform:uppercase;opacity:.6;text-align:left;font-size:.75rem}.selectField select{border:1px solid var(--color-text);background:var(--color-bg);color:var(--color-text);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:1.1rem}.selectField select:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.chapterNav{color:var(--color-bg);justify-content:space-between;margin-top:24px;display:flex}.chapterNav button{border:1px solid var(--color-text);cursor:pointer;color:var(--color-correct);background:0 0;border-radius:6px;padding:6px 14px;font-size:1rem}.chapterNav button:disabled{color:var(--color-bg);opacity:.3;cursor:default}.liveStats{text-align:right;pointer-events:none;z-index:10;line-height:1.5;position:fixed;top:16px;right:24px}.liveStatsValue{font-size:1rem}@keyframes completionOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes completionCardPopIn{0%{opacity:0;transform:scale(.85)translateY(12px)}60%{opacity:1;transform:scale(1.03)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}.completionOverlay{z-index:100;background:#00000073;justify-content:center;align-items:center;animation:.25s ease-out completionOverlayFadeIn;display:flex;position:fixed;inset:0}.completionCard{background:var(--color-bg);color:var(--color-text);text-align:center;border-radius:16px;min-width:260px;padding:32px 40px;animation:.35s cubic-bezier(.34,1.56,.64,1) completionCardPopIn;box-shadow:0 12px 40px #00000040}.completionMessage{margin:0 0 20px;font-size:1.75rem}.completionStats{justify-content:center;gap:32px;margin-bottom:24px;display:flex}.completionStat{flex-direction:column;align-items:center;display:flex}.completionStatValue{font-size:1.75rem;font-weight:700}.completionStatLabel{opacity:.7;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.completionContinue{border:1px solid var(--color-text);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;padding:8px 20px;font-size:1rem}.completionContinue:hover{background:var(--color-text);color:var(--color-bg)}.backHomeLink{color:var(--color-text);z-index:10;font-size:.95rem;text-decoration:none;position:fixed;top:16px;left:24px}.backHomeLink:hover{text-decoration:underline}.retypeButton{border:1px solid var(--color-text);cursor:pointer;color:var(--color-text);opacity:.7;background:0 0;border-radius:6px;margin:12px auto 0;padding:6px 14px;font-size:.9rem;display:block}.retypeButton:hover{opacity:1}.aboutPage{text-align:center;max-width:600px;margin:0 auto}.aboutPage h1{margin-bottom:20px;font-size:2.5rem}.aboutPage p{margin-bottom:32px;font-size:1.1rem}.aboutPage a{color:var(--color-text)}.profilePage{max-width:640px;margin:0 auto;padding:64px 24px 48px}.profileHeaderRow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.profileSignOut{border:1px solid var(--color-text);color:var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;font-size:.85rem}.profileSignOut:hover{background:var(--color-text);color:var(--color-bg)}.profileSignInLink{color:var(--color-text)}.profileSection{margin-top:32px}.profileSection h2{margin-bottom:12px;font-size:1.1rem}.statGrid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.statCard{border:1px solid var(--color-text);border-radius:8px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.statValue{font-size:1.6rem;font-weight:600}.statLabel{opacity:.7;font-size:.85rem}.completionsTable{border-collapse:collapse;width:100%}.completionsTable th,.completionsTable td{text-align:left;border-bottom:1px solid var(--color-text);padding:8px 6px;font-size:.9rem}.completionsTable th{opacity:.7;font-weight:500}.authPage{max-width:380px;margin:0 auto;padding:64px 24px 48px}.authTitle{text-align:center;margin-bottom:32px;font-size:2rem}.authTabs{border:1px solid var(--color-text);border-radius:10px;margin-bottom:24px;display:flex;overflow:hidden}.authTab{color:var(--color-text);cursor:pointer;background:0 0;border:none;flex:1;padding:10px;font-size:1rem}.authTab--active{background:var(--color-text);color:var(--color-bg)}.authForm{flex-direction:column;gap:16px;display:flex}.authField{opacity:.85;flex-direction:column;gap:6px;font-size:.85rem;display:flex}.authField input{border:1px solid var(--color-text);background:var(--color-bg);color:var(--color-correct);border-radius:8px;padding:10px 12px;font-size:1rem}.authField input:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.authError{color:var(--color-incorrect);margin:0;font-size:.9rem}.authSubmit{border:2px solid var(--color-text);background:var(--color-text);color:var(--color-bg);cursor:pointer;border-radius:8px;padding:12px;font-size:1rem;transition:opacity .15s}.authSubmit:disabled{opacity:.6;cursor:default}.authDivider{opacity:.6;align-items:center;gap:12px;margin:24px 0;font-size:.85rem;display:flex}.authDivider:before,.authDivider:after{content:"";background:var(--color-text);flex:1;height:1px}.authGoogleButton{border:2px solid var(--color-text);width:100%;color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;padding:12px;font-size:1rem;transition:background-color .15s,color .15s}.authGoogleButton:hover{background:var(--color-text);color:var(--color-bg)}
