/* Scoped frontend presentation. Never changes article markup outside detected references. */
:root { --gwls-dot:#8a5a17; --gwls-decoration:dotted; --gwls-line:underline; --gwls-ref-text:inherit; --gwls-bottom:26px; }
button.gwls-reference, button.gwls-reference:hover, button.gwls-reference:active {
  all:unset !important; display:inline !important; cursor:pointer !important; color:var(--gwls-ref-text) !important;
  font:inherit !important; line-height:inherit !important; letter-spacing:inherit !important;
  background:transparent !important; border:0 !important; box-shadow:none !important;
  text-decoration-line:var(--gwls-line) !important; text-decoration-style:var(--gwls-decoration) !important;
  text-decoration-color:var(--gwls-dot) !important; text-decoration-thickness:1.5px !important;
  text-underline-offset:3.5px !important; border-radius:2px !important;
}
button.gwls-reference:hover { text-decoration-thickness:2px !important; }
button.gwls-reference:focus-visible, .gwls-floating:focus-visible, .gwls-popover button:focus-visible, .gwls-drawer button:focus-visible, .gwls-drawer select:focus-visible, .gwls-drawer input:focus-visible {
  outline:3px solid var(--gwls-dot) !important; outline-offset:3px !important;
}
.gwls-floating {
  position:fixed !important; bottom:var(--gwls-bottom) !important; z-index:99980 !important;
  border:1px solid rgba(255,255,255,.24) !important; width:50px !important; height:50px !important;
  display:flex !important; justify-content:center !important; align-items:center !important;
  border-radius:999px !important; background:var(--global-palette1,#353638) !important; color:#fff !important;
  box-shadow:0 4px 18px rgba(15,20,30,.23) !important; cursor:pointer !important;
  padding:0 !important; transition:transform .14s ease,box-shadow .14s ease !important;
}
.gwls-float-right { right:22px !important;left:auto !important; }
.gwls-float-left { left:22px !important;right:auto !important; }
.gwls-floating:hover { transform:translateY(-2px);box-shadow:0 6px 22px rgba(15,20,30,.28) !important; }
.gwls-floating svg { width:24px;height:24px;stroke:currentColor; }
.gwls-preview-icon::after {content:'Preview'; position:absolute;right:0;bottom:-18px;font:600 10px/1 system-ui;color:#666;}
.gwls-popover,.gwls-drawer { box-sizing:border-box !important; color:#252525 !important; background:#fff !important; font-family:inherit !important; font-style:normal !important; text-transform:none !important; letter-spacing:normal !important; line-height:1.6 !important; }
.gwls-popover *, .gwls-drawer * { box-sizing:border-box; }
.gwls-popover {
  position:fixed;z-index:100002; width:min(420px,calc(100vw - 24px));
  max-height:min(76vh,600px);display:flex;flex-direction:column;
  padding:18px 18px 14px;background:#fff;border:1px solid #e3dfd9;
  border-radius:13px;box-shadow:0 14px 44px rgba(0,0,0,.19);
}
.gwls-popover:focus {outline:none!important;}
.gwls-popover-header,.gwls-drawer-header {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.gwls-popover-title {font:700 18px/1.3 Georgia,serif;color:#222;}
.gwls-close {border:0!important;box-shadow:none!important;color:#555!important;background:transparent!important;border-radius:8px!important;min-width:36px!important;height:36px!important;line-height:1!important;padding:3px!important;font:400 27px/1 Arial,sans-serif!important;cursor:pointer!important;}
.gwls-close:hover{background:#f2efea!important;color:#222!important;}
.gwls-source-label {color:#777;font-size:12px;margin:2px 0 12px;}
.gwls-preview-verses {overflow:auto;overscroll-behavior:contain;min-height:42px;font-size:15px;line-height:1.7;scrollbar-width:thin;}
.gwls-preview-verse {margin:0 0 10px!important;padding:0!important;font:inherit!important;color:inherit!important;}
.gwls-preview-verse:last-child{margin-bottom:0!important;}
.gwls-verse-number {font-size:.70em;vertical-align:super;line-height:0;color:#8a5a17;font-weight:700;margin:0 5px 0 0;user-select:none;}
.gwls-popup-footer {border-top:1px solid #ebe8e3;padding-top:12px;margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:9px;flex:none;}
.gwls-popover button.gwls-primary,.gwls-drawer button.gwls-go {background:#363636!important;color:#fff!important;border:1px solid #363636!important;border-radius:8px!important;padding:8px 13px!important;box-shadow:none!important;cursor:pointer!important;font:600 13px/1.4 system-ui,sans-serif!important;min-height:36px;}
.gwls-popover button.gwls-primary:hover,.gwls-drawer button.gwls-go:hover{background:#222!important;}
.gwls-popover button.gwls-quiet {background:#fff!important;color:#5d5142!important;border:1px solid #dcd8d2!important;border-radius:8px!important;padding:8px 13px!important;box-shadow:none!important;cursor:pointer!important;font:600 13px/1.4 system-ui,sans-serif!important;min-height:36px;}
.gwls-popover button:disabled{opacity:.5;cursor:default!important;}
.gwls-truncation{font-size:12px!important;color:#666!important;}
body.gwls-lock {overflow:hidden!important;}
.gwls-overlay{position:fixed;inset:0;z-index:100005;display:flex;justify-content:flex-end;}
.gwls-backdrop{position:absolute;inset:0;background:rgba(14,16,19,.48);}
.gwls-drawer{position:relative;width:min(540px,100%);height:100%;max-height:100dvh;display:flex;flex-direction:column;box-shadow:-12px 0 44px rgba(0,0,0,.15);}
.gwls-drawer-header{padding:15px 22px;border-bottom:1px solid #e9e5e0;flex:none;background:#fff;}
.gwls-brand{display:flex;align-items:center;gap:10px;color:#32302e;}
.gwls-brand svg{color:var(--gwls-dot);width:24px;height:24px;}
.gwls-brand-label{font:700 20px/1.3 Georgia,serif;}
.gwls-controls{padding:14px 22px 12px;flex:none;background:#faf9f7;border-bottom:1px solid #e9e5e0;}
.gwls-selector-row{display:flex;gap:10px;margin-bottom:10px;}
.gwls-book-select,.gwls-chapter-select,.gwls-reference-input{border:1px solid #d5d0c9!important;border-radius:8px!important;background:#fff!important;color:#272727!important;font:500 15px/1.4 system-ui,sans-serif!important;padding:10px 12px!important;box-shadow:none!important;min-height:44px!important;margin:0!important;}
.gwls-book-select{flex:1;min-width:0;max-width:100%;}
.gwls-chapter-select{width:88px;flex:none;}
.gwls-reference-lookup{display:flex;gap:8px;margin:0!important;padding:0!important;}
.gwls-reference-input{flex:1;min-width:0;}
.gwls-lookup-hint{font-size:12px;color:#955323;min-height:0;}
.gwls-chapter-main{flex:1;overflow:auto;overscroll-behavior:contain;padding:22px 26px 36px;font-size:var(--gwls-font-size,17px);line-height:1.82;color:#2b2926;}
.gwls-chapter-title{font:700 29px/1.25 Georgia,serif!important;color:#25221f!important;margin:0 0 4px!important;}
.gwls-chapter-subtitle{font-size:12px!important;color:#7a746d!important;margin:0 0 23px!important;}
.gwls-chapter-verses{font-size:inherit;line-height:inherit;}
.gwls-verse{display:block;margin:0 0 9px;white-space:normal;line-height:1.85;scroll-margin-top:30px;}
.gwls-verse-part{font-size:inherit;color:inherit;}
.gwls-verse-part.gwls-poetry{display:block;padding-left:12px;line-height:1.7;}
.gwls-verse-part.gwls-q2,.gwls-verse-part.gwls-qm2{padding-left:29px;}
.gwls-verse-part.gwls-q3,.gwls-verse-part.gwls-qm3{padding-left:45px;}
.gwls-verse-part.gwls-newline{display:block;margin-top:5px;}
.gwls-verse.gwls-highlight{background:#fff2d8;border-left:3px solid #8a5a17;padding:7px 10px;border-radius:4px;}
.gwls-section-heading{font:700 17px/1.4 Georgia,serif!important;color:#5a4831!important;margin:22px 0 10px!important;}
.gwls-note-marker{color:#8a5a17;margin-left:2px;}
.gwls-notes{border-top:1px solid #e9e5e0;margin-top:28px;padding-top:14px;font-size:13px;line-height:1.6;color:#555;}
.gwls-notes-heading{font:700 16px/1.3 Georgia,serif!important;margin:0 0 12px!important;}
.gwls-note{margin:0 0 8px!important;}
.gwls-webu-attribution{margin-top:30px!important;font-size:11px!important;color:#777!important;line-height:1.6!important;}
.gwls-reader-footer{padding:12px 18px;border-top:1px solid #e9e5e0;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;flex:none;}
.gwls-reader-footer button{font:600 13px/1.3 system-ui,sans-serif!important;background:#fff!important;border:1px solid #e0dad2!important;border-radius:8px!important;padding:9px 10px!important;color:#4a4137!important;cursor:pointer!important;box-shadow:none!important;min-height:38px;}
.gwls-reader-footer button:hover:not(:disabled){background:#f6f2ed!important;}
.gwls-reader-footer button:disabled{opacity:.4;cursor:default!important;}
.gwls-reader-footer-center{display:flex;gap:5px;}
.gwls-loading,.gwls-error{color:#7c6f60;font-size:15px;}
@media(max-width:600px){
  .gwls-floating{width:48px!important;height:48px!important;bottom:var(--gwls-bottom)!important;}
  .gwls-float-right{right:16px!important;}.gwls-float-left{left:16px!important;}
  .gwls-popover{left:10px!important;right:10px!important;top:auto!important;bottom:12px!important;width:auto!important;max-height:72dvh;border-radius:15px;padding:16px;box-shadow:0 -5px 38px rgba(0,0,0,.24);}
  .gwls-drawer{width:100%;max-width:none;}
  .gwls-drawer-header{padding:12px 16px;}
  .gwls-controls{padding:11px 15px;}
  .gwls-chapter-main{padding:21px 18px 30px;}
  .gwls-chapter-title{font-size:26px!important;}
  .gwls-reader-footer{padding:10px 12px;}
  .gwls-reader-footer button{padding:8px 8px!important;font-size:12px!important;}
}
@media(prefers-reduced-motion:reduce){.gwls-floating{transition:none!important;}}

/* Editorially documented verse omissions are displayed as notes, not invented Scripture text. */
.gwls-omission-note { color:#766854; font-size:.86em; font-style:italic; }

/* Keep all controls reachable on very short screens and at high browser zoom. */
@media(max-height:420px){
  .gwls-drawer{overflow-y:auto;}
  .gwls-chapter-main{flex-shrink:0;min-height:140px;}
}
