.wsn-app {
    --wsn-bg: #06090d;
    --wsn-panel: #0b121a;
    --wsn-panel-2: #0f1822;
    --wsn-border: #26384a;
    --wsn-text: #f3f0e9;
    --wsn-muted: #aeb9c5;
    --wsn-gold: #d9aa52;
    --wsn-gold-soft: #f0ce84;
    --wsn-blue: #7db5dc;

    --wsn-law: #37a7e8;
    --wsn-history: #54c887;
    --wsn-wisdom: #e8c84d;
    --wsn-prophets: #e58a3c;
    --wsn-gospels: #db5c88;
    --wsn-acts: #56bfd1;
    --wsn-epistles: #9376df;
    --wsn-revelation: #d668c7;

    box-sizing: border-box;
    width: 100%;
    background: var(--wsn-bg);
    color: var(--wsn-text);
    border: 1px solid var(--wsn-border);
    border-radius: 18px;
    padding: clamp(16px, 2.5vw, 30px);
    font-family: Arial, Helvetica, sans-serif;
}

.wsn-app *,
.wsn-app *::before,
.wsn-app *::after {
    box-sizing: border-box;
}

.wsn-header {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 22px;
}

.wsn-eyebrow {
    margin: 0 0 7px;
    color: var(--wsn-gold-soft);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.wsn-header h2,
.wsn-map-heading h3,
.wsn-info-panel h3,
.wsn-info-panel h4 {
    font-family: Georgia, "Times New Roman", serif;
}

.wsn-header h2 {
    margin: 0;
    font-size: clamp(2rem, 5vw, 3.7rem);
    line-height: 0.98;
    letter-spacing: -0.02em;
}

.wsn-subtitle {
    max-width: 760px;
    margin: 10px 0 0;
    color: var(--wsn-muted);
    font-size: 1rem;
    line-height: 1.55;
}

.wsn-badge {
    flex: 0 0 auto;
    border: 1px solid #6e572b;
    border-radius: 999px;
    padding: 8px 12px;
    background: #17130b;
    color: var(--wsn-gold-soft);
    font-size: 0.8rem;
    font-weight: 700;
}

.wsn-controls {
    display: grid;
    grid-template-columns: minmax(280px, 520px) 1fr;
    gap: 18px;
    align-items: end;
    margin-bottom: 12px;
}

.wsn-label {
    display: block;
    margin-bottom: 7px;
    color: var(--wsn-muted);
    font-size: 0.85rem;
    font-weight: 700;
}

.wsn-search-row {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.wsn-search {
    min-width: 220px;
    flex: 1 1 240px;
    min-height: 44px;
    border: 1px solid #40566d;
    border-radius: 9px;
    background: #090f16;
    color: var(--wsn-text);
    padding: 10px 12px;
    font-size: 16px;
    outline: none;
}

.wsn-search:focus {
    border-color: var(--wsn-gold);
    box-shadow: 0 0 0 3px rgba(217, 170, 82, 0.18);
}

.wsn-button {
    min-height: 44px;
    border: 1px solid #40566d;
    border-radius: 9px;
    background: #101923;
    color: var(--wsn-text);
    padding: 9px 14px;
    cursor: pointer;
    font-weight: 700;
}

.wsn-button:hover,
.wsn-button:focus-visible {
    border-color: var(--wsn-gold);
    outline: none;
}

.wsn-button-primary {
    border-color: #8e6e31;
    background: var(--wsn-gold);
    color: #15120c;
}

.wsn-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    justify-content: flex-end;
    color: var(--wsn-muted);
    font-size: 0.78rem;
}

.wsn-legend span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.wsn-key {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
}

.wsn-key-law { background: var(--wsn-law); }
.wsn-key-history { background: var(--wsn-history); }
.wsn-key-wisdom { background: var(--wsn-wisdom); }
.wsn-key-prophets { background: var(--wsn-prophets); }
.wsn-key-gospels { background: var(--wsn-gospels); }
.wsn-key-acts { background: var(--wsn-acts); }
.wsn-key-epistles { background: var(--wsn-epistles); }
.wsn-key-revelation { background: var(--wsn-revelation); }

.wsn-status {
    margin: 8px 0 14px;
    color: var(--wsn-muted);
    font-size: 0.83rem;
}

.wsn-status.is-error {
    color: #ffb4b4;
}

.wsn-layout {
    display: grid;
    grid-template-columns: minmax(0, 2.2fr) minmax(280px, 0.8fr);
    gap: 18px;
    align-items: stretch;
}

.wsn-map-panel,
.wsn-info-panel {
    min-width: 0;
    background: var(--wsn-panel);
    border: 1px solid var(--wsn-border);
    border-radius: 14px;
}

.wsn-map-panel {
    padding: 14px;
}

.wsn-map-heading {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    padding: 2px 3px 10px;
}

.wsn-map-heading h3 {
    margin: 0 0 4px;
    font-size: 1.25rem;
}

.wsn-map-heading p,
.wsn-map-note {
    margin: 0;
    color: var(--wsn-muted);
    font-size: 0.8rem;
    line-height: 1.45;
}

.wsn-map-note {
    max-width: 300px;
    text-align: right;
}

.wsn-map-scroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    border-radius: 10px;
    background:
        linear-gradient(180deg, rgba(16, 31, 45, 0.58), rgba(4, 8, 12, 0.15));
    scrollbar-color: #41566b #0b1118;
}

.wsn-map-scroll:focus-visible {
    outline: 2px solid var(--wsn-gold);
    outline-offset: 3px;
}

.wsn-svg {
    display: block;
    min-width: 1250px;
    width: 100%;
    height: auto;
    aspect-ratio: 1900 / 560;
}

.wsn-baseline {
    stroke: #526476;
    stroke-width: 2;
}

.wsn-section-band {
    opacity: 0.7;
}

.wsn-section-label {
    fill: #aeb9c5;
    font-size: 13px;
    font-weight: 700;
    text-anchor: middle;
    letter-spacing: 0.06em;
}

.wsn-connection {
    fill: none;
    stroke: #738ca3;
    stroke-width: 2;
    stroke-opacity: 0.20;
    vector-effect: non-scaling-stroke;
    transition: stroke-opacity 160ms ease, stroke-width 160ms ease, stroke 160ms ease;
}

.wsn-connection.is-active {
    stroke: var(--wsn-gold-soft);
    stroke-opacity: 0.92;
    stroke-width: 3;
}

.wsn-connection.is-dimmed {
    stroke-opacity: 0.045;
}

.wsn-book-node {
    cursor: pointer;
    outline: none;
}

.wsn-book-node circle {
    stroke: rgba(255,255,255,0.48);
    stroke-width: 1.2;
    vector-effect: non-scaling-stroke;
    transition: r 150ms ease, opacity 150ms ease, stroke 150ms ease;
}

.wsn-book-node text {
    fill: #dae2ea;
    font-size: 11px;
    font-weight: 700;
    text-anchor: end;
    pointer-events: none;
}

.wsn-book-node.is-active circle {
    r: 11;
    stroke: #fff6da;
    stroke-width: 2.2;
}

.wsn-book-node.is-related circle {
    r: 8.5;
    stroke: var(--wsn-gold-soft);
    stroke-width: 1.7;
}

.wsn-book-node.is-dimmed {
    opacity: 0.20;
}

.wsn-book-node:focus-visible circle {
    stroke: #ffffff;
    stroke-width: 3;
}

.wsn-info-panel {
    padding: 18px;
    background: var(--wsn-panel-2);
}

.wsn-info-panel h3 {
    margin: 0 0 4px;
    font-size: 1.8rem;
}

.wsn-info-panel h4 {
    margin: 20px 0 8px;
    color: var(--wsn-gold-soft);
    font-size: 1rem;
}

.wsn-book-meta,
.wsn-info-panel p {
    color: var(--wsn-muted);
    line-height: 1.55;
}

.wsn-book-meta {
    margin: 0 0 14px;
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.wsn-related-list {
    display: grid;
    gap: 8px;
}

.wsn-related-button {
    width: 100%;
    min-height: 44px;
    border: 1px solid #33485c;
    border-radius: 10px;
    background: #0a1118;
    color: var(--wsn-text);
    padding: 10px 11px;
    text-align: left;
    cursor: pointer;
}

.wsn-related-button:hover,
.wsn-related-button:focus-visible {
    border-color: var(--wsn-gold);
    outline: none;
}

.wsn-related-button strong {
    display: block;
    margin-bottom: 3px;
}

.wsn-related-button span {
    display: block;
    color: var(--wsn-muted);
    font-size: 0.78rem;
    line-height: 1.4;
}

.wsn-prototype-callout {
    border-left: 3px solid var(--wsn-gold);
    background: rgba(217, 170, 82, 0.08);
    padding: 10px 12px;
    color: #ddd7c9;
    font-size: 0.84rem;
    line-height: 1.5;
}

.wsn-footer {
    margin-top: 14px;
    color: var(--wsn-muted);
    font-size: 0.78rem;
    line-height: 1.5;
}

.wsn-footer p {
    margin: 0;
}

.wsn-suggestions {
    margin-top: 5px;
    border: 1px solid #33485c;
    border-radius: 9px;
    overflow: hidden;
    background: #0b1219;
}

.wsn-suggestion {
    display: block;
    width: 100%;
    border: 0;
    border-bottom: 1px solid #253546;
    background: transparent;
    color: var(--wsn-text);
    padding: 10px 12px;
    text-align: left;
    cursor: pointer;
}

.wsn-suggestion:last-child {
    border-bottom: 0;
}

.wsn-suggestion:hover,
.wsn-suggestion:focus-visible {
    background: #15202b;
    outline: none;
}

@media (hover: hover) and (pointer: fine) {
    .wsn-book-node:hover circle {
        r: 10;
    }
}

@media (max-width: 980px) {
    .wsn-controls,
    .wsn-layout {
        grid-template-columns: 1fr;
    }

    .wsn-legend {
        justify-content: flex-start;
    }

    .wsn-map-note {
        text-align: left;
    }

    .wsn-info-panel {
        order: 2;
    }
}

@media (max-width: 640px) {
    .wsn-app {
        border-radius: 12px;
        padding: 14px;
    }

    .wsn-header,
    .wsn-map-heading {
        flex-direction: column;
    }

    .wsn-badge {
        align-self: flex-start;
    }

    .wsn-search-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .wsn-search {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
    }

    .wsn-button {
        width: 100%;
    }

    .wsn-map-note {
        max-width: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wsn-app *,
    .wsn-app *::before,
    .wsn-app *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}


/* ---- v1.2 quantitative additions ---- */

.wsn-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 18px;
}

.wsn-metric {
    min-width: 0;
    border: 1px solid var(--wsn-border);
    border-radius: 12px;
    background: linear-gradient(180deg, #0f1822, #0a1118);
    padding: 13px 15px;
}

.wsn-metric-value {
    display: block;
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.6rem, 3vw, 2.25rem);
    line-height: 1;
    margin-bottom: 6px;
}

.wsn-metric span {
    color: var(--wsn-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.wsn-filter-wrap {
    min-width: 0;
}

.wsn-filter-group {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.wsn-filter {
    min-height: 44px;
    border: 1px solid #40566d;
    border-radius: 999px;
    background: #101923;
    color: var(--wsn-text);
    padding: 8px 14px;
    cursor: pointer;
    font-weight: 700;
}

.wsn-filter:hover,
.wsn-filter:focus-visible {
    border-color: var(--wsn-gold);
    outline: none;
}

.wsn-filter.is-active {
    background: var(--wsn-gold);
    color: #15120c;
    border-color: var(--wsn-gold);
}

.wsn-connection {
    stroke: #758da5;
    stroke-opacity: 0.22;
}

.wsn-connection.is-active {
    stroke: var(--wsn-gold-soft);
    stroke-opacity: 0.95;
}

.wsn-connection.is-filtered {
    display: none;
}

.wsn-edge-count {
    fill: #f2d18a;
    font-size: 13px;
    font-weight: 700;
    text-anchor: middle;
    pointer-events: none;
}

.wsn-scale {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-end;
    padding: 9px 3px 0;
    color: var(--wsn-muted);
    font-size: 0.72rem;
}

.wsn-scale i {
    width: min(180px, 30%);
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, #596f83 0%, #d9aa52 100%);
}

.wsn-quant-list {
    display: grid;
    gap: 8px;
    margin-top: 10px;
}

.wsn-quant-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 42px;
    border-bottom: 1px solid #243445;
    padding: 5px 0;
}

.wsn-quant-row:last-child {
    border-bottom: 0;
}

.wsn-quant-book {
    min-width: 0;
}

.wsn-quant-book strong {
    display: block;
}

.wsn-quant-book span {
    color: var(--wsn-muted);
    font-size: 0.75rem;
}

.wsn-quant-count {
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
    font-weight: 700;
}

.wsn-bottom-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 18px;
}

.wsn-data-card {
    border: 1px solid var(--wsn-border);
    border-radius: 14px;
    background: var(--wsn-panel);
    padding: 16px 18px;
}

.wsn-data-card h3 {
    margin: 0 0 12px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.1rem;
}

.wsn-data-card p {
    color: var(--wsn-muted);
    font-size: 0.82rem;
    line-height: 1.55;
}

.wsn-attribution a {
    color: var(--wsn-gold-soft);
}

.wsn-verse-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.wsn-verse-chip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 44px;
    border: 1px solid #31465a;
    border-radius: 9px;
    background: #091018;
    padding: 9px 11px;
}

.wsn-verse-chip strong {
    font-size: 0.83rem;
}

.wsn-verse-chip span {
    color: var(--wsn-gold-soft);
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 980px) {
    .wsn-metrics,
    .wsn-bottom-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .wsn-verse-grid {
        grid-template-columns: 1fr;
    }
}


/* ---- v1.3 local-data-engine additions ---- */

.wsn-notice {
    margin: 0 0 18px;
    border-left: 4px solid var(--wsn-gold);
    border-radius: 7px;
    background: rgba(217, 170, 82, .09);
    padding: 11px 13px;
    color: #e6decf;
    font-size: .84rem;
    line-height: 1.5;
}

.wsn-control-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 20px;
    align-items: end;
    justify-content: flex-end;
}

.wsn-select {
    min-height: 44px;
    border: 1px solid #40566d;
    border-radius: 9px;
    background: #090f16;
    color: var(--wsn-text);
    padding: 8px 34px 8px 11px;
    font-size: 16px;
}

.wsn-select:focus {
    border-color: var(--wsn-gold);
    outline: none;
    box-shadow: 0 0 0 3px rgba(217, 170, 82, .18);
}

.wsn-mini-metrics {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 12px 0 18px;
}

.wsn-mini-metric {
    border: 1px solid #304357;
    border-radius: 10px;
    background: #0a1118;
    padding: 10px;
}

.wsn-mini-metric strong {
    display: block;
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.35rem;
    line-height: 1;
    margin-bottom: 5px;
}

.wsn-mini-metric span {
    display: block;
    color: var(--wsn-muted);
    font-size: .72rem;
    line-height: 1.35;
}

.wsn-quant-button {
    width: 100%;
    border: 0;
    border-bottom: 1px solid #243445;
    border-radius: 0;
    background: transparent;
    color: var(--wsn-text);
    text-align: left;
    cursor: pointer;
    padding-left: 0;
    padding-right: 0;
}

.wsn-quant-button:hover,
.wsn-quant-button:focus-visible {
    background: rgba(217,170,82,.06);
    outline: none;
}

.wsn-pair-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0 18px;
}

.wsn-bottom-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wsn-card-intro {
    margin-top: -4px;
}

.wsn-hotspot-list {
    display: grid;
    gap: 0;
}

.wsn-hotspot-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid #28394a;
    padding: 8px 0;
}

.wsn-hotspot-row:last-child {
    border-bottom: 0;
}

.wsn-hotspot-row strong {
    font-size: .82rem;
}

.wsn-hotspot-row span {
    color: var(--wsn-gold-soft);
    font-weight: 700;
}

@media (max-width: 1100px) {
    .wsn-bottom-grid {
        grid-template-columns: 1fr 1fr;
    }

    .wsn-bottom-grid > :last-child {
        grid-column: 1 / -1;
    }
}

@media (max-width: 760px) {
    .wsn-control-stack {
        justify-content: flex-start;
    }

    .wsn-bottom-grid,
    .wsn-mini-metrics {
        grid-template-columns: 1fr;
    }

    .wsn-bottom-grid > :last-child {
        grid-column: auto;
    }
}


/* ---- v1.4 YLT Scripture Drawer ---- */
.wsn-scripture-drawer{margin-top:18px;border:1px solid var(--wsn-border);border-radius:15px;background:#081019;padding:clamp(15px,2.5vw,24px)}
.wsn-scripture-drawer[hidden]{display:none!important}
.wsn-drawer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:14px;border-bottom:1px solid #293b4d}
.wsn-drawer-title{margin:0 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,3vw,2.1rem)}
.wsn-drawer-summary{margin:0;color:var(--wsn-muted);line-height:1.5}
.wsn-drawer-notice{margin:14px 0}.wsn-passage-list{display:grid;gap:14px}
.wsn-passage-card{border:1px solid #2c4054;border-radius:12px;background:#0b141e;overflow:hidden}
.wsn-passage-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid #2c4054;background:#101b27}
.wsn-passage-card-header strong{color:var(--wsn-gold-soft);font-family:Georgia,"Times New Roman",serif;font-size:.98rem}.wsn-score{color:var(--wsn-muted);font-size:.72rem;white-space:nowrap}
.wsn-passage-columns{display:grid;grid-template-columns:1fr 1fr;gap:0}.wsn-passage-column{min-width:0;padding:15px 16px}.wsn-passage-column+.wsn-passage-column{border-left:1px solid #2c4054}
.wsn-passage-column h4{margin:0 0 10px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:1rem}.wsn-ylt-verse{margin:0 0 8px;color:#e8e3da;font-family:Georgia,"Times New Roman",serif;font-size:.94rem;line-height:1.6}
.wsn-ylt-verse sup{color:var(--wsn-gold-soft);font-family:Arial,Helvetica,sans-serif;font-size:.67em;font-weight:700}.wsn-translation-label{margin-top:11px;color:var(--wsn-muted);font-size:.7rem;font-style:italic}
.wsn-passage-unavailable,.wsn-loading{color:var(--wsn-muted);font-style:italic}.wsn-relationship-note{margin:0;border-top:1px solid #233548;padding:9px 14px;color:#8998a8;font-size:.7rem;line-height:1.45}
.wsn-drawer-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:14px}.wsn-drawer-page-status{color:var(--wsn-muted);font-size:.75rem}
@media(max-width:760px){.wsn-drawer-header,.wsn-passage-card-header{align-items:stretch;flex-direction:column}.wsn-passage-columns{grid-template-columns:1fr}.wsn-passage-column+.wsn-passage-column{border-left:0;border-top:1px solid #2c4054}.wsn-score{white-space:normal}}

/* ---- v1.5 Watchman Press reviewed annotation layer ---- */

.wsn-annotation-panel {
    border-top: 1px solid #31465a;
    background: #0d1721;
}

.wsn-annotation-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 14px;
    background: rgba(217,170,82,.08);
    border-bottom: 1px solid #31465a;
}

.wsn-annotation-heading strong {
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
}

.wsn-annotation-heading span {
    color: var(--wsn-muted);
    font-size: .72rem;
}

.wsn-annotation-item {
    padding: 14px;
    border-bottom: 1px solid #2a3b4d;
}

.wsn-annotation-item:last-child { border-bottom: 0; }

.wsn-annotation-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 10px;
}

.wsn-annotation-badge,
.wsn-review-status,
.wsn-confidence-badge {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border-radius: 999px;
    padding: 4px 9px;
    font-size: .68rem;
    font-weight: 700;
    line-height: 1;
}

.wsn-annotation-badge {
    border: 1px solid #6d5730;
    background: #1b160d;
    color: #f0ce84;
}

.wsn-review-status {
    border: 1px solid #2d6d4b;
    background: #0c2117;
    color: #83d8aa;
}

.wsn-status-reviewed {
    border-color: #38647c;
    background: #0c1c26;
    color: #9fd5ee;
}

.wsn-confidence-badge {
    border: 1px solid #46586b;
    background: #101820;
    color: #bdc8d2;
}

.wsn-annotation-item h5 {
    margin: 0 0 10px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1rem;
}

.wsn-annotation-block,
.wsn-watchman-insight { margin: 10px 0; }

.wsn-annotation-block > strong,
.wsn-watchman-insight > strong {
    display: block;
    margin-bottom: 4px;
    color: #d9e0e7;
    font-size: .76rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.wsn-annotation-block p,
.wsn-watchman-insight p,
.wsn-annotation-details p {
    margin: 0;
    color: #d6dce2;
    line-height: 1.55;
    font-size: .84rem;
}

.wsn-watchman-insight {
    border-left: 3px solid var(--wsn-gold);
    background: rgba(217,170,82,.08);
    padding: 10px 12px;
}

.wsn-watchman-insight > strong { color: var(--wsn-gold-soft); }

.wsn-annotation-details {
    margin: 8px 0 0;
    border: 1px solid #304356;
    border-radius: 8px;
    background: #0a1118;
}

.wsn-annotation-details summary {
    cursor: pointer;
    padding: 9px 11px;
    color: #dce5ed;
    font-size: .78rem;
    font-weight: 700;
}

.wsn-annotation-details p { padding: 0 11px 11px; }

.wsn-annotation-meta {
    margin: 10px 0 0;
    color: #8795a3;
    font-size: .68rem;
}


/* ---- v1.6 data health + reviewed relationship filters ---- */
.wsn-health{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}.wsn-health-chip{display:inline-flex;align-items:center;min-height:30px;border:1px solid #40566d;border-radius:999px;padding:5px 10px;font-size:.7rem;font-weight:700}.wsn-health-chip.is-ready{border-color:#2e704e;background:#0b2117;color:#8bd8ae}.wsn-health-chip.is-missing{border-color:#7b6030;background:#21190b;color:#f0ce84}.wsn-health-chip.is-neutral{color:var(--wsn-muted);background:#0c141d}.wsn-connection.is-active:not(.is-reviewed){stroke:var(--wsn-blue)}.wsn-connection.is-reviewed{stroke:var(--wsn-gold-soft)}.wsn-review-mark{fill:var(--wsn-gold-soft);font-size:11px;font-weight:800;text-anchor:middle;letter-spacing:.03em;pointer-events:none}.wsn-count-stack{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.wsn-reviewed-pill{display:inline-flex;border:1px solid #715a2d;border-radius:999px;background:#1b160d;color:var(--wsn-gold-soft);padding:3px 7px;font-size:.62rem;font-weight:700;white-space:nowrap}@media(max-width:760px){.wsn-count-stack{align-items:flex-start}}


/* ---- v1.7 permanent study links + original-language pane ---- */

.wsn-passage-card-title {
    min-width: 0;
}

.wsn-passage-card-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.wsn-study-permalink {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    border: 1px solid #6d5730;
    border-radius: 999px;
    background: #18140c;
    color: var(--wsn-gold-soft);
    padding: 5px 9px;
    font-size: .68rem;
    font-weight: 700;
    text-decoration: none;
}

.wsn-study-permalink:hover,
.wsn-study-permalink:focus-visible {
    border-color: var(--wsn-gold-soft);
    color: #fff4d2;
    outline: none;
}

.wsn-language-study {
    margin: 10px 0 0;
    border: 1px solid #40566d;
    border-radius: 10px;
    background: #081019;
    overflow: hidden;
}

.wsn-language-study > summary {
    cursor: pointer;
    padding: 10px 12px;
    color: var(--wsn-gold-soft);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .02em;
}

.wsn-language-study-body {
    display: grid;
    gap: 0;
    border-top: 1px solid #304356;
}

.wsn-language-block {
    padding: 11px 12px;
    border-bottom: 1px solid #253748;
}

.wsn-language-block:last-child {
    border-bottom: 0;
}

.wsn-language-block > strong {
    display: block;
    margin-bottom: 6px;
    color: #ccd7e0;
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.wsn-language-block p {
    margin: 0;
    color: #dde4ea;
    line-height: 1.6;
    font-size: .84rem;
}

.wsn-original-text {
    font-size: 1.02rem !important;
}

.wsn-greek-text {
    font-family: Georgia, "Times New Roman", serif;
}

.wsn-hebrew-text {
    font-family: Georgia, "Times New Roman", serif;
    text-align: right;
}

.wsn-strongs-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.wsn-strongs-pill {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    border: 1px solid #3a596f;
    border-radius: 999px;
    background: #0c1c27;
    color: #bfe1f4;
    padding: 4px 8px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: .7rem;
    font-weight: 700;
}

@media (max-width: 760px) {
    .wsn-passage-card-actions {
        justify-content: flex-start;
    }
}


/* ---- v1.8 Study Library ---- */

.wsn-study-library {
    margin-top: 18px;
    border: 1px solid var(--wsn-border);
    border-radius: 15px;
    background: #091018;
    padding: clamp(15px, 2.5vw, 24px);
    color: var(--wsn-text);
}

.wsn-study-library-standalone {
    --wsn-bg: #06090d;
    --wsn-panel: #0b121a;
    --wsn-panel-2: #0f1822;
    --wsn-border: #26384a;
    --wsn-text: #f3f0e9;
    --wsn-muted: #aeb9c5;
    --wsn-gold: #d9aa52;
    --wsn-gold-soft: #f0ce84;
    box-sizing: border-box;
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

.wsn-study-library-standalone *,
.wsn-study-library-standalone *::before,
.wsn-study-library-standalone *::after {
    box-sizing: border-box;
}

.wsn-library-header,
.wsn-library-preview-heading {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    margin-bottom: 16px;
}

.wsn-library-header h2,
.wsn-library-preview-heading h3 {
    margin: 0 0 6px;
    font-family: Georgia, "Times New Roman", serif;
}

.wsn-library-header h2 {
    font-size: clamp(1.8rem, 4vw, 3rem);
}

.wsn-library-preview-heading h3 {
    font-size: 1.4rem;
}

.wsn-library-header p,
.wsn-library-preview-heading p {
    margin: 0;
    color: var(--wsn-muted);
    line-height: 1.5;
}

.wsn-library-count {
    flex: 0 0 auto;
    border: 1px solid #40566d;
    border-radius: 999px;
    padding: 7px 10px;
    color: var(--wsn-muted);
    font-size: .72rem;
    font-weight: 700;
}

.wsn-library-controls {
    display: grid;
    grid-template-columns: minmax(220px, 1.4fr) minmax(190px, .8fr) auto auto;
    gap: 10px;
    align-items: end;
    margin-bottom: 10px;
}

.wsn-library-controls label {
    min-width: 0;
}

.wsn-library-featured-label {
    display: flex;
    gap: 8px;
    align-items: center;
    min-height: 44px;
    color: var(--wsn-muted);
    font-size: .82rem;
}

.wsn-library-featured-label input {
    width: 18px;
    height: 18px;
}

.wsn-library-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.wsn-study-card {
    min-width: 0;
    display: flex;
    flex-direction: column;
    border: 1px solid #2c4054;
    border-radius: 12px;
    background: linear-gradient(180deg, #0d1721, #091018);
    padding: 14px;
}

.wsn-study-card.is-featured {
    border-color: #6f572d;
    background: linear-gradient(180deg, rgba(217,170,82,.09), #091018 42%);
}

.wsn-study-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 9px;
}

.wsn-study-relationship {
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .82rem;
    line-height: 1.35;
}

.wsn-featured-badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    border: 1px solid #715a2d;
    border-radius: 999px;
    background: #1b160d;
    color: var(--wsn-gold-soft);
    padding: 4px 7px;
    font-size: .62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.wsn-study-card h4 {
    margin: 0 0 9px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.05rem;
    line-height: 1.3;
}

.wsn-study-category-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 9px;
}

.wsn-study-category {
    display: inline-flex;
    align-items: center;
    min-height: 25px;
    border: 1px solid #40566d;
    border-radius: 999px;
    background: #0c151e;
    color: #cbd6df;
    padding: 3px 7px;
    font-size: .62rem;
    font-weight: 700;
}

.wsn-study-summary {
    margin: 0 0 12px;
    color: #c6d0d9;
    font-size: .8rem;
    line-height: 1.55;
}

.wsn-study-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    margin-top: auto;
    padding-top: 8px;
    color: #8594a3;
    font-size: .66rem;
}

.wsn-study-open {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin-top: 12px;
    border: 1px solid #826731;
    border-radius: 9px;
    background: var(--wsn-gold);
    color: #17130c;
    padding: 8px 11px;
    text-decoration: none;
    font-size: .76rem;
    font-weight: 800;
}

.wsn-study-open:hover,
.wsn-study-open:focus-visible {
    border-color: #fff0bd;
    background: var(--wsn-gold-soft);
    color: #17130c;
    outline: none;
}

.wsn-library-empty {
    border: 1px dashed #40566d;
    border-radius: 10px;
    padding: 20px;
    color: var(--wsn-muted);
    text-align: center;
}

@media (max-width: 1050px) {
    .wsn-library-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wsn-library-controls {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 680px) {
    .wsn-library-header,
    .wsn-library-preview-heading {
        flex-direction: column;
    }

    .wsn-library-grid,
    .wsn-library-controls {
        grid-template-columns: 1fr;
    }

    .wsn-library-count {
        align-self: flex-start;
    }
}


/* ---- v1.9 collection landing-page refinement ---- */

.wsn-study-library[data-wsn-library-collection]:not([data-wsn-library-collection=""]) .wsn-library-category {
    border-color: #6e572b;
}

.wsn-study-library[data-wsn-library-collection="featured"] .wsn-library-header,
.wsn-study-library[data-wsn-library-collection="messianic"] .wsn-library-header,
.wsn-study-library[data-wsn-library-collection="covenant"] .wsn-library-header {
    border-bottom: 1px solid #2c4054;
    padding-bottom: 14px;
}


/* ============================================================
   v2.0 WordPress-native reviewed Scripture Study pages
   ============================================================ */

.watchman-scripture-study-page .entry-title,
.watchman-scripture-study-page .page-title {
    display: none;
}

.wsn-public-study {
    --wsn-bg: #06090d;
    --wsn-panel: #0b121a;
    --wsn-panel-2: #0f1822;
    --wsn-border: #26384a;
    --wsn-text: #f3f0e9;
    --wsn-muted: #aeb9c5;
    --wsn-gold: #d9aa52;
    --wsn-gold-soft: #f0ce84;
    --wsn-blue: #7db5dc;
    --wsn-study-max: 1220px;
    max-width: var(--wsn-study-max);
    margin: 24px auto;
    border: 1px solid var(--wsn-border);
    border-radius: 18px;
    background:
        radial-gradient(circle at 20% 0%, rgba(217,170,82,.07), transparent 30%),
        #070d13;
    color: var(--wsn-text);
    padding: clamp(18px, 3vw, 34px);
    box-shadow: 0 24px 80px rgba(0,0,0,.22);
}

.wsn-public-study *,
.wsn-public-study *::before,
.wsn-public-study *::after {
    box-sizing: border-box;
}

.wsn-study-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
    margin-bottom: 22px;
    color: var(--wsn-muted);
    font-size: .72rem;
}

.wsn-study-breadcrumbs a {
    color: #b9c9d8;
    text-decoration: none;
}

.wsn-study-breadcrumbs a:hover {
    color: var(--wsn-gold-soft);
}

.wsn-public-study-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 22px;
    border-bottom: 1px solid #2c4054;
    padding-bottom: 20px;
}

.wsn-public-study-header h1 {
    max-width: 900px;
    margin: 0 0 10px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 5vw, 4.15rem);
    line-height: 1.03;
    letter-spacing: -.025em;
}

.wsn-public-study-relationship {
    margin: 0;
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1rem, 2vw, 1.25rem);
}

.wsn-public-study-relationship span {
    display: inline-block;
    padding: 0 8px;
    color: #75889a;
}

.wsn-public-study-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 16px 0;
}

.wsn-public-study-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 18px 0 4px;
}

.wsn-study-primary-action,
.wsn-study-secondary-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    border-radius: 9px;
    padding: 9px 13px;
    text-decoration: none;
    font-size: .78rem;
    font-weight: 800;
}

.wsn-study-primary-action {
    border: 1px solid #866a34;
    background: var(--wsn-gold);
    color: #16120b;
}

.wsn-study-primary-action:hover,
.wsn-study-primary-action:focus-visible {
    background: var(--wsn-gold-soft);
    color: #16120b;
}

.wsn-study-secondary-action {
    border: 1px solid #40566d;
    background: #0c151e;
    color: #dbe4ec;
}

.wsn-study-secondary-action:hover,
.wsn-study-secondary-action:focus-visible {
    border-color: #6c849a;
    color: #fff;
}

.wsn-public-study-section {
    margin-top: clamp(34px, 6vw, 58px);
}

.wsn-section-heading {
    max-width: 850px;
    margin-bottom: 18px;
}

.wsn-section-heading h2 {
    margin: 0 0 8px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
}

.wsn-section-heading p:not(.wsn-eyebrow) {
    margin: 0;
    color: var(--wsn-muted);
    line-height: 1.55;
}

.wsn-public-passage-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.wsn-public-passage {
    min-width: 0;
    border: 1px solid #304356;
    border-radius: 13px;
    background: linear-gradient(180deg, #0d1721, #091018);
    padding: clamp(15px, 2.2vw, 22px);
}

.wsn-public-passage h3 {
    margin: 0 0 14px;
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.15rem;
}

.wsn-public-passage .wsn-ylt-verse {
    font-size: clamp(.94rem, 1.6vw, 1.08rem);
    line-height: 1.72;
}

.wsn-chapter-break {
    margin: 18px 0 10px;
    border-top: 1px solid #33485b;
    padding-top: 11px;
    color: var(--wsn-gold-soft);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.wsn-public-annotation-list {
    display: grid;
    gap: 14px;
}

.wsn-public-annotation {
    border: 1px solid #304356;
    border-radius: 13px;
    background: #0a121b;
    padding: clamp(15px, 2vw, 21px);
}

.wsn-public-annotation h3 {
    margin: 9px 0 13px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.25rem;
}

.wsn-public-note {
    margin-top: 13px;
}

.wsn-public-note > strong {
    display: block;
    margin-bottom: 5px;
    color: #dce5ed;
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .065em;
}

.wsn-public-note p {
    margin: 0;
    color: #d1d9e0;
    font-size: .9rem;
    line-height: 1.65;
}

.wsn-related-study-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.wsn-related-study-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    border: 1px solid #304356;
    border-radius: 10px;
    background: #0b141d;
    padding: 13px;
    color: #eef2f5;
    text-decoration: none;
}

.wsn-related-study-card:hover {
    border-color: #7a6130;
    background: rgba(217,170,82,.07);
}

.wsn-related-study-card span {
    font-family: Georgia, "Times New Roman", serif;
    font-size: .94rem;
}

.wsn-related-study-card small {
    color: var(--wsn-gold-soft);
    font-size: .68rem;
}

.wsn-study-navigation {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-top: 42px;
    border-top: 1px solid #304356;
    border-bottom: 1px solid #304356;
    padding: 16px 0;
}

.wsn-study-navigation > div {
    min-width: 0;
}

.wsn-study-navigation span {
    display: block;
    margin-bottom: 4px;
    color: #7f8f9e;
    font-size: .64rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .075em;
}

.wsn-study-navigation a {
    color: var(--wsn-gold-soft);
    font-family: Georgia, "Times New Roman", serif;
    font-size: .9rem;
    text-decoration: none;
}

.wsn-study-navigation-next {
    text-align: right;
}

.wsn-public-study-footer {
    margin-top: 28px;
    border-left: 3px solid #6a552d;
    background: rgba(217,170,82,.05);
    padding: 11px 13px;
    color: #92a0ad;
    font-size: .72rem;
    line-height: 1.55;
}

.wsn-public-study-footer p {
    margin: 0;
}

.wsn-study-card-actions {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 7px;
    margin-top: 12px;
}

.wsn-study-card-actions .wsn-study-open {
    margin-top: 0;
}

.wsn-study-network-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid #40566d;
    border-radius: 9px;
    background: #0c151e;
    color: #c8d2db;
    padding: 8px 10px;
    text-decoration: none;
    font-size: .69rem;
    font-weight: 700;
}

.wsn-study-network-link:hover {
    border-color: #71879b;
    color: #fff;
}

@media (max-width: 760px) {
    .wsn-public-study {
        margin: 10px auto;
        border-radius: 12px;
    }

    .wsn-public-study-header {
        flex-direction: column;
    }

    .wsn-public-passage-grid,
    .wsn-related-study-grid,
    .wsn-study-navigation {
        grid-template-columns: 1fr;
    }

    .wsn-study-navigation-next {
        text-align: left;
    }

    .wsn-study-card-actions {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   v2.0.1 Publication polish
   Hide theme-native article chrome on generated Study pages.
   The Watchman renderer remains the single visible article header.
   ============================================================ */

.wsn-study-reference-layout .entry-header,
.wsn-study-reference-layout .entry-meta,
.wsn-study-reference-layout .post-meta,
.wsn-study-reference-layout .post-byline,
.wsn-study-reference-layout .byline,
.wsn-study-reference-layout .posted-on,
.wsn-study-reference-layout .author,
.wsn-study-reference-layout .author-info,
.wsn-study-reference-layout .post-author,
.wsn-study-reference-layout .post-date,
.wsn-study-reference-layout .entry-date,
.wsn-study-reference-layout .wp-block-post-title,
.wsn-study-reference-layout .wp-block-post-author,
.wsn-study-reference-layout .wp-block-post-date,
.wsn-study-reference-layout .wp-block-post-terms,
.wsn-study-reference-layout .elementor-post-info,
.wsn-study-reference-layout .elementor-widget-theme-post-title,
.wsn-study-reference-layout .elementor-widget-theme-post-excerpt,
.wsn-study-reference-layout .elementor-widget-post-info {
    display: none !important;
}

.wsn-study-reference-layout main .entry-content,
.wsn-study-reference-layout .site-main .entry-content {
    margin-top: 0;
}

.wsn-study-reference-layout .wsn-public-study .author,
.wsn-study-reference-layout .wsn-public-study .post-date,
.wsn-study-reference-layout .wsn-public-study .entry-date {
    display: initial !important;
}

.wsn-theme-author-fallback {
    font-style: normal;
}
