:root{--sidebar-width: clamp(260px, 30vw, 380px);--mobile-sidebar-height: clamp(250px, 44vh, 380px);--controls-height: clamp(48px, 8vh, 64px);--sidebar-border: rgba(255, 255, 255, .1);--sidebar-panel-bg: linear-gradient(180deg, rgba(20, 19, 16, .95) 0%, rgba(13, 12, 10, .98) 100%);--sidebar-panel-border: rgba(255, 255, 255, .12);--sidebar-title: #ffffff;--sidebar-text: #e2ddd3;--sidebar-muted: #b8b0a0;--accent: #c8a35a;--accent-strong: #e0c480;--accent-soft: rgba(200, 163, 90, .34);--accent-soft-bg: rgba(72, 54, 27, .45)}@media (max-width: 980px){:root{--sidebar-width: clamp(230px, 38vw, 320px)}}@media (max-width: 760px){:root{--sidebar-width: clamp(210px, 44vw, 280px)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;background-color:#0a0a0a;color:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}#app{position:relative;width:calc(100vw - var(--sidebar-width));height:calc(100vh - var(--controls-height))}#arc-canvas{display:block;width:100%;height:100%;background-color:#0a0a0a}#sidebar{position:fixed;top:0;right:0;width:var(--sidebar-width);height:calc(100vh - var(--controls-height));background:radial-gradient(920px 380px at 20% -20%,#6e522438,#0000 60%),radial-gradient(780px 280px at 120% -10%,#48341833,#0000 58%),linear-gradient(180deg,#12100d,#0d0b09);border-left:1px solid var(--sidebar-border);box-shadow:-20px 0 36px #00000052;padding:12px;overflow-y:scroll;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;scrollbar-width:none;-ms-overflow-style:none}#sidebar-shell{display:flex;flex-direction:column;gap:10px;min-height:100%}.sidebar-about-btn{align-self:flex-start;min-height:32px;padding:0 13px;border-radius:999px;border:1px solid var(--accent-soft);background:linear-gradient(180deg,#584120ad,#362712c7);color:#fff8e8;font-size:12px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:border-color .13s ease,transform .13s ease,filter .13s ease}.sidebar-about-btn:hover{border-color:var(--accent-strong);filter:brightness(1.05)}.sidebar-about-btn:active{transform:scale(.98)}.sidebar-panel{border:1px solid var(--sidebar-panel-border);background:var(--sidebar-panel-bg);border-radius:14px;box-shadow:inset 0 1px #ffffff0a;padding:12px}.sidebar-lang-floating{position:absolute;top:14px;right:14px;z-index:4}#sidebar-settings{margin-top:8px;border:1px solid var(--sidebar-panel-border);border-radius:14px;background:var(--sidebar-panel-bg);box-shadow:inset 0 1px #ffffff0a;padding:12px}.settings-title{color:var(--sidebar-title);font-size:14px;font-weight:700;letter-spacing:.01em;margin-bottom:3px}.settings-subtitle{color:var(--sidebar-muted);font-size:11px;line-height:1.35;margin-bottom:12px}.lang-flag-group{display:inline-flex;gap:6px}.lang-flag-btn{border:1px solid rgba(255,255,255,.24);border-radius:999px;background:#120f0be6;color:#e8e0cf;font-size:11px;min-width:62px;height:31px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.lang-flag-btn .flag{font-size:14px;line-height:1}.lang-flag-btn:hover{border-color:var(--accent-soft);background:#281e12e6}.lang-flag-btn.is-active{border-color:var(--accent-strong);background:linear-gradient(180deg,#755829a6,#493415bf);color:#fff8e6}.settings-lock-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.interaction-guide{color:var(--sidebar-muted);font-size:12px;line-height:1.45}.lock-status{color:#f7f1e3;font-size:11px;font-weight:600}#search-container{display:flex;flex-direction:column;gap:7px}#verse-search-input{width:100%;height:38px;border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:0 10px;background:#0e0c09e0;color:#fffaf0;font-size:12px;outline:none;transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}#verse-search-input:focus{border-color:var(--accent-strong);box-shadow:0 0 0 3px #c8a35a38;background:#14100bf0}#verse-search-results{list-style:none;margin:0;padding:4px;max-height:180px;overflow-y:auto;scrollbar-gutter:stable both-edges;scrollbar-width:none;-ms-overflow-style:none;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#0d0b09f2;display:none}#verse-search-results li{border-bottom:1px solid rgba(255,255,255,.08)}#verse-search-results li:last-child{border-bottom:0}.search-result-button{width:100%;border:0;background:transparent;color:var(--sidebar-text);text-align:left;padding:6px 8px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.search-result-button:hover{background:#37281280}.search-result-ref{font-size:12px;color:#fff8ea}.search-result-snippet{font-size:11px;color:var(--sidebar-muted);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-empty{font-size:12px;color:var(--sidebar-muted);padding:8px}#sidebar-verse-panel{display:flex;flex-direction:column;gap:6px}#verse-ref-row{display:flex;align-items:center;justify-content:flex-start;gap:6px}#verse-ref{font-size:16px;font-weight:700;color:#f8fbff;margin:0;min-height:20px;letter-spacing:.01em;flex:0 1 auto;min-width:auto;line-height:1.1}#chapter-nav{display:inline-flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0;margin-left:6px;align-self:center;justify-content:center}#chapter-nav.is-hidden{display:none}.chapter-nav-btn{width:12px;height:12px;border:0;border-radius:0;padding:0;background:transparent;color:#ddc48f;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .12s ease,opacity .12s ease}#chapter-nav .chapter-nav-btn:first-child{transform:translateY(2px)}#chapter-nav .chapter-nav-btn:last-child{transform:translateY(-2px)}.chapter-nav-chevron{width:7px;height:7px;border-top:1.7px solid currentColor;border-right:1.7px solid currentColor;display:block}.chapter-nav-chevron.is-up{transform:rotate(-45deg)}.chapter-nav-chevron.is-down{transform:rotate(135deg)}.chapter-nav-btn:hover:not(:disabled){color:#f5dfb0}.chapter-nav-btn:disabled{opacity:.34;cursor:default}#verse-text{font-size:13px;color:var(--sidebar-text);line-height:1.6;margin-bottom:0;min-height:40px}#sidebar-connections-panel{display:flex;flex-direction:column;gap:8px;flex:1}.sidebar-section-heading{color:#f3ead8;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.connections-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.connections-toggle-btn{border:1px solid rgba(255,255,255,.17);border-radius:999px;height:26px;padding:0 10px;background:#100d0ae6;color:#f2e5c9;font-size:11px;letter-spacing:.03em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.connections-toggle-btn:hover:not(:disabled){border-color:var(--accent-strong);background:#382913eb;color:#fff9ec}.connections-toggle-btn:disabled{opacity:.45;cursor:default}#connections-list{list-style:none;display:flex;flex-direction:column;gap:8px}#connections-list li{display:block}.connection-item{font-size:12px;color:var(--sidebar-text);border:1px solid rgba(200,163,90,.22);border-radius:10px;background:linear-gradient(180deg,#120e0aeb,#0d0a08f2);padding:6px 10px 5px;transition:border-color .13s ease,background-color .13s ease}.connection-item:hover{border-color:var(--accent-strong);background:linear-gradient(180deg,#261d12f0,#18120cf5)}.connection-empty{color:var(--sidebar-muted);padding:8px 10px;border:1px dashed rgba(255,255,255,.14);border-radius:10px;background:#0c101780}.connection-ref-btn{width:100%;border:0;padding:2px 0;background:transparent;color:#f5eddc;font-size:13px;font-weight:600;text-align:left;cursor:pointer;transition:color .13s ease}.connection-ref-btn:hover,.connection-ref-btn.is-open{color:#fff}.connection-expanded-verse{display:none;color:#cdc2ad;font-size:12px;line-height:1.55;padding:8px 0 5px}.connection-expanded-verse.is-open{display:block}#controls{position:fixed;bottom:0;left:0;width:100%;height:var(--controls-height);min-height:48px;background:#0d0d0d;border-top:1px solid #171717;display:flex;align-items:center;justify-content:space-between;padding:8px 14px;z-index:20}#footer-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.footer-action-btn{display:inline-flex;align-items:center;padding:4px 12px;border-radius:6px;font-size:11px;font-weight:500;letter-spacing:.02em;text-decoration:none;color:#b0b0b0;border:1px solid #282828;background:transparent;transition:color .12s,border-color .12s,background .12s;white-space:nowrap}.footer-action-btn:hover{color:#e8e8e8;border-color:#404040;background:#ffffff0d}#footer-left{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}#footer-sources{color:#9f9f9f;font-size:11px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#footer-credit{color:#666;font-size:10px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-credit-link{color:#888;text-decoration:none;border-bottom:1px solid #444;transition:color .12s,border-color .12s}.footer-credit-link:hover{color:#bbb;border-bottom-color:#888}.story-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:none}.story-overlay.is-open{display:grid;place-items:center;animation:storyFadeIn .16s ease-out}.story-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#05070aa8;-webkit-backdrop-filter:blur(8px) saturate(115%);backdrop-filter:blur(8px) saturate(115%)}.story-modal{position:relative;width:min(660px,calc(100vw - 24px));max-height:min(86vh,680px);height:auto;overflow:auto;font-family:Avenir Next,Segoe UI Variable,Segoe UI,sans-serif;border-radius:14px;border:1px solid rgba(200,163,90,.28);background:radial-gradient(1000px 360px at 10% -20%,#825e2730,#0000 62%),radial-gradient(900px 320px at 100% -15%,#53381624,#0000 64%),linear-gradient(180deg,#13100d,#0f0c09);box-shadow:0 18px 44px #00000080,inset 0 0 0 1px #ffffff08,inset 0 1px #e0c4801f;animation:storySlideUp .22s cubic-bezier(.2,.8,.2,1)}.story-header,.story-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}.story-header{border-bottom:1px solid rgba(200,163,90,.24)}.story-step-indicator{min-width:50px;height:30px;padding:0 9px;border-radius:999px;border:1px solid var(--accent-soft);background:#17120cd1;color:#fff8e8;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.story-close-btn{width:30px;height:30px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#19130dd1;color:#fff8ea;font-size:19px;line-height:1;cursor:pointer;transition:border-color .13s ease,background-color .13s ease}.story-close-btn:hover{border-color:var(--accent-strong);background:#3a2a13eb}.story-content{padding:15px 14px 10px;display:grid;gap:10px}.story-kicker{margin:0;color:#f2d9a2;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.story-title{color:#fff9ec;font-size:clamp(20px,2.3vw,34px);line-height:1.08;letter-spacing:.005em;font-weight:740;margin-bottom:2px;text-wrap:balance;font-family:Georgia,Times New Roman,serif}.story-body{display:grid;gap:8px;color:#d6ccb9;max-width:60ch}.story-line{margin:0;font-size:clamp(13px,1.2vw,18px);line-height:1.45;text-wrap:pretty;background:linear-gradient(180deg,#1a140da8,#110d0aad);border:1px solid rgba(200,163,90,.2);border-radius:10px;padding:8px 10px}.story-line.is-lead{color:#fff9ea;border-color:#e0c48080;background:linear-gradient(180deg,#423016b3,#261c0ec2)}.story-line.is-closing{color:#fbe7bd;border-color:#e0c4808f;font-weight:700}.story-line.is-chip{display:inline-flex;width:fit-content;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:700;border-radius:999px;padding:6px 10px;border-color:#e0c48099;background:#463215cc}.story-modal[data-slide-kind=hero] .story-title{font-size:clamp(24px,3vw,44px);letter-spacing:.015em;text-transform:uppercase}.story-modal[data-slide-kind=hero] .story-body{max-width:none;gap:0}.story-footer{border-top:1px solid rgba(200,163,90,.24);background:linear-gradient(180deg,#100c09f0,#0d0a08fa);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.story-dont-show{display:inline-flex;align-items:center;gap:8px;color:#c6bca8;font-size:11px}.story-actions{display:inline-flex;gap:8px}.story-nav-btn{border:1px solid rgba(200,163,90,.34);border-radius:9px;min-width:84px;height:33px;background:#1b140eeb;color:#f8eed8;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .13s ease,transform .13s ease,background-color .13s ease}.story-nav-btn:hover{border-color:var(--accent-strong);background:#382913e6}.story-nav-btn:active{transform:scale(.98)}.story-nav-btn:disabled{opacity:.5;cursor:default}.story-nav-btn.is-primary{background:linear-gradient(180deg,#b9914b,#886128);border-color:#e0c480b3;color:#fff9ec}@keyframes storyFadeIn{0%{opacity:0}to{opacity:1}}@keyframes storySlideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 900px){#app{width:100vw;height:calc(100vh - var(--controls-height) - var(--mobile-sidebar-height))}#sidebar{top:auto;right:0;bottom:var(--controls-height);left:0;width:100vw;height:var(--mobile-sidebar-height);border-left:0;border-top:1px solid var(--sidebar-border);border-radius:16px 16px 0 0;box-shadow:0 -16px 30px #0006;padding:10px 10px 12px;background:radial-gradient(900px 300px at 20% -30%,#6e522433,#0000 62%),linear-gradient(180deg,#12100d,#0d0b09)}#sidebar{padding:10px 10px 12px}#sidebar-shell{gap:8px;min-height:auto}#sidebar-settings,.sidebar-panel{border-radius:12px;padding:10px}#sidebar-settings{margin-top:6px}.sidebar-lang-floating{right:10px;top:10px}#footer-sources{white-space:normal}.story-modal{width:calc(100vw - 10px);max-height:calc(100vh - 10px);border-radius:12px}.story-content{padding:12px 12px 6px}.story-header,.story-footer{padding:10px 12px}.story-footer{flex-direction:column;align-items:stretch}.story-actions{width:100%}.story-nav-btn{flex:1}}@media (max-width: 640px){:root{--mobile-sidebar-height: clamp(235px, 48vh, 360px)}#sidebar-settings,.sidebar-panel{border-radius:10px;padding:9px}#sidebar-shell{gap:7px}#verse-ref{font-size:15px}#verse-text{font-size:12px}}#sidebar::-webkit-scrollbar,#verse-search-results::-webkit-scrollbar{width:0;height:0;background:transparent}
