
.sitenav{position:relative;background:var(--card);border-bottom:1px solid var(--rule);font-family:var(--sans)}
.sitenav .sn{display:flex;align-items:center;max-width:42.5rem;margin:0 auto;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}
.sitenav .sn>a{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 4px;font-size:17px;font-weight:600;line-height:1.2;letter-spacing:.04em;color:var(--ink);text-decoration:none;white-space:nowrap;box-shadow:inset 0 -3px 0 transparent;-webkit-tap-highlight-color:transparent}
.sitenav .sn>a[aria-current="page"]{color:var(--accent);font-weight:700;box-shadow:inset 0 -3px 0 var(--accent)}
.sitenav .sn>a:focus-visible{outline:2px solid var(--accent);outline-offset:-4px;border-radius:6px}
@media (hover:hover){.sitenav .sn>a:hover{color:var(--accent)}}
.sitenav .st-t{flex:0 0 44px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 0 0 4px;padding:0;border:1.5px solid var(--accent);border-radius:8px;background:transparent;color:var(--accent);cursor:pointer;-webkit-tap-highlight-color:transparent}
.sitenav .st-t[hidden]{display:none}
.sitenav .st-t svg{display:block;width:22px;height:22px}
.sitenav .st-t[aria-expanded="true"]{background:var(--accent);color:var(--bg)}
.sitenav .st-t:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.stp{position:fixed;inset:0;z-index:30;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--card);color:var(--ink);padding:0 max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));font-size:.9375rem;line-height:1.5;text-align:left}
.stp-hd{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:40rem;margin:0 auto;padding:max(8px,env(safe-area-inset-top)) 0 8px;background:var(--card);border-bottom:1px solid var(--rule)}
.stp-ttl{margin:0;font-size:1.25rem;font-weight:700;letter-spacing:.06em}
.stp-x{flex:none;min-width:88px;min-height:44px;padding:0 16px;border:0;border-radius:8px;background:var(--accent);color:var(--bg);font:inherit;font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}
.stp-x:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.stp-bd{max-width:40rem;margin:0 auto}
html.stp-on,html.stp-on body{overflow:hidden}
.stp[hidden]{display:none}
.stp:focus{outline:none}
.stp-g{display:flex;align-items:center;gap:10px;margin:10px 0 0;color:var(--ink);font-size:.875rem;font-weight:600;letter-spacing:.12em}
.stp-g::before,.stp-g::after{content:"";flex:1 1 0;height:1px;background:var(--rule)}
.stp-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0}
.stp-row+.stp-row{border-top:1px solid var(--rule)}
.stp-row[hidden]{display:none}
.stp-l{font-weight:600;white-space:nowrap}
.stp .seg{display:inline-flex;flex:none;border:1.5px solid var(--accent);border-radius:8px;overflow:hidden}
.stp .seg button{flex:none;box-sizing:border-box;min-width:max(56px,calc(2em + 26px));min-height:44px;padding:0 12px;border:0;background:transparent;color:var(--accent);font:inherit;font-weight:600;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}
.stp .seg button+button{border-left:1.5px solid var(--accent)}
.stp .seg button[aria-pressed="true"]{background:var(--accent);color:var(--bg)}
.stp .seg button:disabled{opacity:.45;cursor:default}
.stp .seg a{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:max(56px,calc(2em + 26px));min-height:44px;padding:0 12px;color:var(--accent);font-weight:600;white-space:nowrap;text-decoration:none;-webkit-tap-highlight-color:transparent}
.stp .seg a+a{border-left:1.5px solid var(--accent)}
.stp .seg a[aria-current="true"]{background:var(--accent);color:var(--bg)}
.stp .seg a:focus-visible,.stp .seg button:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
.stp-help{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border:1.5px solid var(--accent);border-radius:8px;background:transparent;color:var(--accent);font:inherit;font-weight:600;line-height:1.3;white-space:nowrap;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.stp-help:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.stp-btns{gap:8px}
.stp-btns>.stp-help,.rd-row>.stp-help{flex:1 1 0;min-width:0;padding:0 8px}
.stp-pv{justify-content:flex-start}
.stp-pv>a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.875rem;text-underline-offset:3px}
.push-row,.rd-row,.rd-ask{flex-wrap:wrap;row-gap:4px}
.push-st,.rd-st{flex:1 0 100%;margin:0;color:var(--muted);font-size:.875rem;line-height:1.5}
.push-st[hidden],.rd-st[hidden]{display:none}
.stp .push-t{flex:none;box-sizing:border-box;min-width:max(115px,calc(4em + 55px));min-height:44px;margin:0;padding:0 12px;border:1.5px solid var(--accent);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;font-weight:600;line-height:1.3;text-align:center;color-scheme:light dark;cursor:pointer;-webkit-appearance:none;appearance:none}
.stp .push-t::-webkit-date-and-time-value{min-height:1.3em;text-align:center}
.stp .push-t:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.stp .push-t:disabled{opacity:.45;cursor:default}
.rd-ask-b{display:flex;gap:8px}
.stp-help.rd-yes{background:var(--accent);color:var(--bg)}
@media print{.sitenav{display:none}}

.ac-out,.ac-on,.ac-ask{flex-wrap:wrap;row-gap:6px}
.ac-out>.ac-in{flex:1 1 100%}
.ac-note,.ac-who,.ac-st{flex:1 0 100%;margin:0;line-height:1.5}
.ac-note,.ac-st{color:var(--muted);font-size:.875rem}
.ac-pv{margin-left:.5em;color:var(--accent);white-space:nowrap}
.ac-who{font-weight:600;overflow-wrap:anywhere}
.ac-b{flex:1 0 100%;display:flex;flex-wrap:wrap;gap:8px}
.ac-b>.stp-help{flex:1 1 auto;padding:0 10px}
.ac-ask .stp-l{white-space:normal}
.ac-lox{flex:1 0 100%;min-height:44px;padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:.875rem;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ac-dbd{position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;background:rgba(0,0,0,.28)}
.ac-dlg{position:fixed;z-index:29;left:50%;top:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:min(24rem,calc(100vw - 32px));max-height:80vh;overflow-y:auto;background:var(--card);color:var(--ink);border:1px solid var(--rule);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.22);padding:16px;font-family:var(--sans,inherit);line-height:1.6;text-align:left}
.ac-dlg p{margin:0 0 8px;overflow-wrap:anywhere}
.ac-dlg button{display:block;width:100%;min-height:48px;margin-top:8px;padding:0 12px;border:1.5px solid var(--accent);border-radius:10px;background:transparent;color:var(--accent);font:inherit;font-weight:700;white-space:normal;cursor:pointer}
.ac-dlg .ac-sw-m{background:var(--accent);color:var(--bg)}
@media print{.ac-dlg,.ac-dbd{display:none!important}}

.totop{position:fixed;z-index:14;right:max(16px,calc(env(safe-area-inset-right) + 12px));bottom:max(20px,calc(env(safe-area-inset-bottom) + 14px));width:52px;height:52px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--rule);border-radius:50%;background:var(--card);color:var(--accent);box-shadow:0 4px 14px rgba(0,0,0,.18);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility 0s linear .2s;-webkit-tap-highlight-color:transparent}
.totop.on{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .2s}
.totop svg{width:26px;height:26px}
.totop:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
body:has(.copybar:not([hidden])) .totop{visibility:hidden}
body::after{content:'';display:block;height:76px}
@media (prefers-reduced-motion:reduce){.totop,.totop.on{transition:none}}
@media print{.totop{display:none}}

.pos-bn{position:fixed;z-index:16;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));transform:translateX(-50%);box-sizing:border-box;width:min(30rem,calc(100vw - 16px));padding:10px 12px 12px;background:var(--card);color:var(--ink);border:1.5px solid var(--accent);border-radius:12px;box-shadow:0 6px 22px rgba(0,0,0,.22);font-family:var(--sans,inherit);font-size:1rem;line-height:1.55;text-align:left}
.pos-bn[hidden]{display:none}
.pos-tx{margin:0 0 8px;overflow-wrap:anywhere}
.pos-b{display:flex;flex-wrap:wrap;gap:8px}
.pos-b button{flex:1 1 6.5em;min-height:48px;padding:0 12px;border:1.5px solid var(--accent);border-radius:10px;font:inherit;font-weight:700;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}
.pos-go{background:var(--accent);color:var(--bg)}
.pos-no{background:transparent;color:var(--accent)}
.pos-b button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
html.pos-on body::after{height:calc(var(--posh,140px) + 28px)}
html.pos-on .totop{visibility:hidden}
@media print{.pos-bn{display:none}}

.tour-shade{position:fixed;z-index:40;left:0;top:0;width:0;height:0;pointer-events:none;background:rgba(0,0,0,.18)}
@supports ((-webkit-backdrop-filter:blur(3px)) or (backdrop-filter:blur(3px))){.tour-shade{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}
@media (prefers-color-scheme:dark){.tour-shade{background:rgba(0,0,0,.35)}}
.tour-ring{position:fixed;z-index:41;pointer-events:none;border:2px solid var(--accent);border-radius:8px;box-shadow:0 0 0 3px var(--bg)}
.tour-ring[hidden]{display:none}
.tour-card{position:fixed;z-index:42;left:50%;transform:translateX(-50%);box-sizing:border-box;width:min(28rem,calc(100vw - 24px));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain;background:var(--card);color:var(--ink);border:1px solid var(--rule);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.25);padding:12px 18px 16px;font-family:var(--sans);font-size:max(18px,1.125rem);line-height:1.65;text-align:left;animation:tourin .15s ease-out}
.tour-card.at-top{top:max(12px,env(safe-area-inset-top))}
.tour-card.at-bottom{bottom:max(12px,env(safe-area-inset-bottom))}
.tour-card.at-mid{top:50%;transform:translate(-50%,-50%)}
@keyframes tourin{from{opacity:0}to{opacity:1}}
.tour-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tour-n{color:var(--muted);font-size:max(16px,1rem);font-variant-numeric:tabular-nums}
.tour-card h2{margin:0 0 6px;font-size:max(20px,1.25rem);line-height:1.4;letter-spacing:.04em}
.tour-card h2:focus{outline:none}
.tour-card p{margin:0 0 8px}
.tour-card button{font:inherit;min-height:48px;border-radius:10px;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tour-card .tour-skip{min-height:44px;padding:0 8px;margin-right:-8px;border:0;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:.2em}
.tour-nav{display:flex;gap:10px;margin-top:10px}
.tour-nav button{flex:1 1 0;min-width:0;padding:0 10px;font-weight:700}
.tour-card .tour-prev{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
.tour-card .tour-prev:disabled{opacity:.35;cursor:default}
.tour-card .tour-next,.tour-card .tour-inst{background:var(--accent);color:var(--bg);border:1.5px solid var(--accent)}
.tour-card .tour-inst{padding:0 24px;margin:2px 0 8px;font-weight:700}
.tour-card button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.tour-card{animation:none}}
@media print{.tour-shade,.tour-ring,.tour-card{display:none!important}}

.scripture .vt{display:flex;flex-wrap:wrap;gap:0 6px;margin:-6px 0 2px}
.scripture .vt+p.v{border-top:1px solid var(--vsep)}
.vt-c{display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 2px;color:var(--muted);font-family:var(--sans);font-size:.8125rem;line-height:1.3;text-decoration:none;-webkit-tap-highlight-color:transparent}
.vt-n{padding:2px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--bg)}
.vt-c:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}
.tg-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tg-dot{display:inline-block;flex:none;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.tg-dot0{box-shadow:inset 0 0 0 1.5px var(--rule)}
.copybar .cb-tag{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
.copybar.cb-pop .cb-tag{display:none}
.copybar .cb-tag:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media print{.scripture .vt{display:none}}
