:root{--bg:#fbf7ef;--bg-2:#f4eee2;--surface:#fff;--surface-2:#f7f2e8;--ink:#1f2a44;--muted:#4f5869;--faint:#6b7383;--line:#e7dfcf;--line-strong:#d8ccb5;--accent:#7a1f2b;--accent-deep:#5a1520;--accent-soft:#f6e9ea;--gold:#b8892b;--gold-text:#8a6417;--gold-soft:#f3e7cc;--good:#2f7d4f;--good-soft:#e6f2ea;--good-ink:#1d5434;--bad:#b3261e;--bad-soft:#fbeae8;--bad-ink:#8c1d17;--radius:14px;--display:"Libre Baskerville", Georgia, "Times New Roman", serif;--ui:"Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif;--sans:var(--ui);--serif:"Libre Baskerville", Georgia, "Times New Roman", serif;--shadow:0 1px 2px #1f2a440d, 0 8px 24px #1f2a440f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:18px/1.6 var(--ui);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent);text-underline-offset:3px}a:hover{color:var(--accent-deep)}::selection{background:var(--gold-soft);color:var(--ink)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}html{accent-color:var(--accent)}p,li,blockquote,summary{text-wrap:pretty}h1,h2,h3,.quiz-q{text-wrap:balance}img{max-width:100%}.wrap{max-width:920px;margin:0 auto;padding:0 16px}.site-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fffffff5;position:sticky;top:0}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:64px;display:flex}.brand{font:700 20px var(--display);color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand-mark{background:var(--bg);border:1.5px solid var(--gold);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.brand-mark svg{width:16px;height:16px}.brand b{margin-left:.28em;font-weight:700}.nav{flex-wrap:wrap;gap:4px;display:flex}.nav a{color:var(--ink);font:600 15px var(--ui);border-radius:8px;padding:8px 11px;text-decoration:none}.nav a:hover{color:var(--accent);background:var(--accent-soft)}main{padding:40px 0 72px}.eyebrow{font:600 14px var(--ui);color:var(--gold-text);margin:0 0 10px}h1{font:700 clamp(30px, 5.6vw, 46px)/1.15 var(--display);letter-spacing:-.01em;color:var(--ink);margin:0 0 16px}h1 em,h2 em{color:var(--accent);font-style:normal}h2{font:700 clamp(23px, 3.6vw, 28px)/1.25 var(--display);color:var(--ink);margin:48px 0 16px}h2:after{content:"";background:var(--gold);width:44px;height:2px;margin-top:12px;display:block}h3{font:700 18px/1.35 var(--display);margin:22px 0 8px}.lead{color:var(--muted);max-width:62ch;margin:0 0 28px;font-size:19px}.crumbs{color:var(--faint);margin-bottom:16px;font-size:15px}.crumbs a{color:var(--faint)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.card-label{font:600 15px var(--ui);color:var(--muted);justify-content:space-between;gap:12px;margin-bottom:14px;display:flex}.card-label>span:first-child{font:700 17px var(--display);color:var(--ink)}.card-label .live{color:var(--muted)}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.tile{background:var(--surface);border:1px solid var(--line);color:var(--ink);box-shadow:var(--shadow);border-radius:12px;padding:18px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.tile:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.tile strong{font:700 18px var(--display);color:var(--accent);margin-bottom:4px;display:block}.tile span{color:var(--muted);font-size:15px}.chips{flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.chip{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:600 15px var(--ui);cursor:pointer;border-radius:999px;padding:7px 15px;text-decoration:none;transition:border-color .15s,background-color .15s}.chip:hover{border-color:var(--accent);color:var(--accent)}.chip[aria-pressed=true],.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.btn{border:1px solid var(--accent);font:700 17px var(--ui);cursor:pointer;background:var(--accent);color:#fffaf3;box-shadow:0 2px 0 var(--accent-deep), 0 6px 16px #7a1f2b29;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;text-decoration:none;transition:transform .1s,box-shadow .1s,background-color .15s;display:inline-flex}.btn:hover{background:var(--accent-deep);color:#fffaf3}.btn:active:not(:disabled){box-shadow:0 0 0 var(--accent-deep);transform:translateY(2px)}.btn.ghost{background:var(--surface);color:var(--accent);border:1px solid var(--accent);box-shadow:none}.btn.ghost:hover{background:var(--accent-soft);color:var(--accent-deep)}.btn:disabled{opacity:.4;cursor:default}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.topic-pick{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.topic-label{font:600 15px var(--ui);color:var(--muted);margin:0 0 10px}.topic-pick .chips{margin:0}.chip.more{color:var(--accent);background:0 0;border-color:#0000}.verse{font:400 clamp(21px, 3.3vw, 27px)/1.55 var(--serif);color:var(--ink);margin:0 0 14px}.verse-ref{font:700 16px var(--ui);letter-spacing:.02em;color:var(--gold-text);margin:0 0 22px}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);padding:16px 0}.list li:last-child{border-bottom:0}.list blockquote{font:18px/1.6 var(--serif);margin:0 0 6px}.list cite{font:normal 700 15px var(--ui);color:var(--gold-text)}.quiz-q{font:700 clamp(20px, 3.2vw, 24px)/1.4 var(--display);margin:0 0 18px}.options{counter-reset:opt;gap:10px;margin-bottom:16px;display:grid}@media (width>=640px){.options{grid-template-columns:1fr 1fr}}.option{counter-increment:opt;text-align:left;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font:600 17px/1.35 var(--ui);cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background-color .15s,transform .1s;display:flex}.option:before{content:counter(opt, upper-alpha);border:1.5px solid var(--ink);width:28px;height:28px;color:var(--ink);font:700 14px var(--ui);border-radius:50%;flex:none;place-items:center;display:grid}.option:hover:not(:disabled){border-color:var(--ink);background:var(--surface-2)}.option:active:not(:disabled){transform:translateY(1px)}.option.correct{background:var(--good-soft);border-color:var(--good);color:var(--good-ink)}.option.correct:before{background:var(--good);border-color:var(--good);color:#fff}.option.wrong{background:var(--bad-soft);border-color:var(--bad);color:var(--bad-ink)}.option.wrong:before{background:var(--bad);border-color:var(--bad);color:#fff}.option:disabled{cursor:default}.option:disabled:not(.correct):not(.wrong){opacity:.55}.feedback{min-height:28px;font:700 17px var(--ui);margin-bottom:14px}.feedback.good{color:var(--good-ink)}.feedback.bad{color:var(--bad-ink)}.score{font:700 60px/1 var(--display);color:var(--accent);margin:6px 0 10px}.bar{background:#eee6d6;border-radius:99px;height:6px;margin-bottom:18px;overflow:hidden}.bar i{background:var(--gold);border-radius:99px;height:100%;transition:width .25s;display:block}details.qa{border-bottom:1px solid var(--line);padding:14px 0}details.qa summary{cursor:pointer;font:600 18px var(--ui)}details.qa summary::marker{color:var(--accent)}details.qa p{color:var(--muted);margin:8px 0 0}details.qa strong{color:var(--good-ink)}.prose p,.prose li{max-width:68ch;color:var(--muted)}.prose h1,.prose h2{color:var(--ink)}.note{color:var(--faint);font-size:15px}.pager{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:36px;display:flex}.muted-text{color:var(--muted);max-width:68ch;margin:-4px 0 8px}.list blockquote,.advent-list blockquote,.verse{max-width:34em}.advent-when{font:700 15px var(--ui);color:var(--gold-text);margin:0 0 4px}.toc{margin:28px 0 0}.advent-title{margin:0 0 10px;font-size:24px}.advent-title:after{display:none}.advent-list{margin:0;padding:0;list-style:none}.advent-list li{border-bottom:1px solid var(--line);grid-template-columns:72px 1fr;gap:16px;padding:18px 0;scroll-margin-top:90px;display:grid}.advent-list h3{margin:0 0 6px}.advent-list blockquote{font:18px/1.6 var(--serif);margin:0 0 6px}.advent-list cite{font:normal 700 15px var(--ui);color:var(--gold-text)}.advent-day{font:700 15px/1.2 var(--ui);color:var(--faint);padding-top:3px}.advent-list li.today{background:var(--gold-soft);border-radius:12px;padding-left:12px;padding-right:12px}.advent-list li.today .advent-day{color:var(--accent)}.feature-list{gap:12px;display:grid}@media (width>=720px){.feature-list{grid-template-columns:1fr 1fr}}.feature{background:var(--surface);border:1px solid var(--line);color:var(--ink);box-shadow:var(--shadow);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:2px 16px;padding:18px 20px;text-decoration:none;transition:border-color .15s,transform .15s;display:grid}.feature:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.feature strong{font:700 18px/1.3 var(--display);color:var(--accent)}.feature span{color:var(--muted);grid-column:1;font-size:16px}.feature svg{color:var(--gold);grid-area:1/2/span 2}.season{border-radius:var(--radius);background:var(--bg-2);border:1px solid var(--line-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:8px 0 0;padding:18px 22px;display:flex}.season p{font:700 19px var(--display);margin:0}.season p span{font:400 16px var(--ui);color:var(--muted);margin-top:4px;display:block}.coloring-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px;display:grid}.coloring-thumb{color:var(--ink);text-decoration:none;display:block}.coloring-thumb img{aspect-ratio:3/4;object-fit:contain;border:1px solid var(--line);width:100%;height:auto;box-shadow:var(--shadow);background:#fff;border-radius:12px;transition:transform .15s;display:block}.coloring-thumb:hover img{transform:translateY(-3px)}.coloring-thumb strong{font:700 16px/1.35 var(--display);color:var(--accent);margin:12px 0 2px;display:block}.coloring-thumb span{color:var(--muted);font-size:15px}.print-sheet{border:1px solid var(--line);border-radius:var(--radius);background:#fff;max-width:640px;margin:0 0 8px;padding:18px}.print-sheet img{width:100%;height:auto;display:block}.print-sheet figcaption{color:#444;font:13px/1.4 var(--serif);justify-content:space-between;gap:12px;padding-top:10px;display:flex}.print-credit{font-family:var(--ui);white-space:nowrap}@media print{@page{margin:12mm}body{color:#000;background:#fff}.site-header,.site-footer,.crumbs,h1,.lead,.no-print{display:none!important}main{padding:0}.print-sheet{border:0;border-radius:0;max-width:none;padding:0}.print-sheet img{width:auto;max-height:92vh;margin:0 auto}}.share-dialog{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(440px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--ink);padding:18px;overflow:auto;box-shadow:0 24px 60px #1f2a4440}.share-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f2a4473}.share-head{font:700 18px var(--display);justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.share-close{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px}.share-close:hover{color:var(--ink)}.share-preview{object-fit:contain;aspect-ratio:4/5;background:var(--bg-2);border-radius:10px;width:100%;max-height:62vh;margin-bottom:14px;display:block}.share-actions .btn{flex:auto;padding:11px 14px;font-size:15px}.book-name{color:var(--accent)}.book-group h3 span{color:var(--faint);font-weight:400}.book-chain{flex-wrap:wrap;gap:8px;margin:0 0 8px;padding:0;list-style:none;display:flex}.book-chain a{background:var(--surface);border:1px solid var(--line);color:var(--ink);font:500 15px var(--ui);border-radius:8px;padding:6px 12px;text-decoration:none;display:inline-block}.book-chain a:hover{border-color:var(--accent);color:var(--accent)}.result-name{font:700 clamp(36px, 6.5vw, 54px)/1.1 var(--display);color:var(--accent);margin:4px 0 6px}.result-tag{font:700 19px var(--display);margin:0 0 14px}.ws-wrap{flex-wrap:wrap;align-items:flex-start;gap:22px;display:flex}.ws-grid{grid-template-columns:repeat(var(--n), 1fr);aspect-ratio:1;border:1px solid var(--line-strong);background:#fff;border-radius:10px;gap:1px;width:min(100%,560px);padding:8px;display:grid}.ws-cell{aspect-ratio:1;color:var(--ink);font:700 clamp(12px, 3.4vw, 20px)/1 var(--ui);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0}.ws-cell:hover{background:var(--surface-2)}.ws-cell.pick{background:var(--gold-soft);color:var(--accent)}.ws-cell.found{background:var(--good-soft);color:var(--good-ink)}.ws-cell.shown:not(.found){background:#fbefcc}.ws-words{font:600 16px var(--ui);flex:200px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px 16px;margin:0;padding:0;list-style:none;display:grid}.ws-words li.done{color:var(--faint);text-decoration:line-through}.cw-wrap{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.cw-grid{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));width:min(100%, calc(var(--cols) * 40px));display:grid}.cw-block{aspect-ratio:1}.cw-cell{aspect-ratio:1;border:1px solid var(--ink);background:#fff;margin:-.5px;position:relative}.cw-cell.hl{background:var(--gold-soft)}.cw-cell.bad input{color:var(--bad)}.cw-num{font:600 11px/1 var(--ui);color:#333;pointer-events:none;position:absolute;top:1px;left:2px}.cw-cell input{text-align:center;text-transform:uppercase;width:100%;height:100%;font:700 clamp(13px, 3.2vw, 19px) var(--ui);color:var(--ink);caret-color:#0000;background:0 0;border:0;min-width:0;padding:6px 0 0}.cw-cell input:focus{outline:3px solid var(--accent);outline-offset:-3px}.cw-clues{flex:260px}.cw-clues .cw-h{margin:0 0 8px;font-size:20px}.cw-clues .cw-h:after{display:none}.cw-clues ol{margin:0 0 18px;padding:0;list-style:none}.cw-clues li{color:var(--muted);border-radius:8px;padding:5px 8px}.cw-clues li b{color:var(--ink);margin-right:6px}.cw-clues li.on{background:var(--gold-soft);color:var(--ink)}.cw-ref{color:var(--faint)}@media print{.puzzle{box-shadow:none;color:#000;border:0;padding:0;background:#fff!important}.ws-words,.cw-clues,.cw-clues li{color:#000!important}.ws-cell.found,.ws-cell.shown{background:0 0!important}.cw-cell input{color:#0000!important}.cw-clues li.on{background:0 0}}.site-footer{border-top:1px solid var(--line);color:var(--muted);background:var(--bg-2);padding:32px 0;font-size:15px}.site-footer nav{flex-wrap:wrap;gap:18px;margin-bottom:10px;display:flex}.site-footer a{color:var(--accent);font-weight:600;text-decoration:none}.site-footer a:hover{text-decoration:underline}.facts{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:100%;max-width:44em;margin:0 0 24px;font-size:16px;overflow:hidden}.facts th,.facts td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:11px 14px}.facts tr:last-child th,.facts tr:last-child td{border-bottom:0}.facts th{font:700 15px var(--ui);color:var(--ink);width:38%}.facts thead th{color:var(--muted);background:var(--surface-2);width:auto}.facts td small{color:var(--faint);display:block}.answer{border:1px solid var(--line-strong);background:var(--surface);border-radius:var(--radius);max-width:36em;box-shadow:var(--shadow);margin:0 0 24px;padding:16px 20px;font-size:18px}.answer strong{color:var(--accent)}@media (width<=600px){.facts th{width:44%}.facts th,.facts td{padding:9px 8px;font-size:15px}}.quiz{position:relative}.option{position:relative;overflow:visible}.spark{pointer-events:none;z-index:2;border-radius:50%;width:7px;height:7px;position:absolute}.confetti{pointer-events:none;z-index:3;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.bar i{transition:width .45s cubic-bezier(.22,1,.36,1)}.score{font-variant-numeric:tabular-nums;transform-origin:0;display:inline-block}@media (prefers-reduced-motion:reduce){.bar i{transition:none}}@media (width<=640px){.site-header{position:static}.site-header .wrap{gap:6px;min-height:0;padding-top:10px;padding-bottom:4px}.nav{scrollbar-width:none;flex-wrap:nowrap;width:calc(100% + 32px);margin:0 -16px;padding:0 10px 6px;overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;padding:8px 10px}}
