/* CP22-B: scoped source reader. No persistent bar over analytical charts. */
.osf-button{font:600 13px/1.25 system-ui,sans-serif!important;display:inline-flex!important;align-items:center!important;gap:6px;min-height:40px!important;padding:8px 12px!important;margin:8px 0!important;border:1px solid #9d914e!important;border-radius:8px!important;background:#153822!important;color:#f1df8e!important;cursor:pointer;white-space:normal;max-width:100%;text-decoration:none!important}
.osf-button:hover{background:#245336!important}.osf-button:focus-visible{outline:3px solid #edcf50!important;outline-offset:3px!important}
.osf-modal{--ink:#eeeede;--muted:#c2d0c3;--gold:#ead47a;--border:#47654c;width:min(1440px,calc(100vw - 24px));height:calc(100dvh - 24px);max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;padding:0!important;border:1px solid var(--border)!important;border-radius:16px!important;background:#091a10!important;color:var(--ink)!important;font:15px/1.6 system-ui,-apple-system,Segoe UI,sans-serif!important;box-sizing:border-box;overflow:hidden!important;box-shadow:0 20px 80px #000b;z-index:2147483630}
.osf-modal::backdrop{background:#020804bd}.osf-modal *{box-sizing:border-box}.osf-modal [hidden]{display:none!important}.osf-modal header.osf-head{position:static!important;display:flex;align-items:center;gap:12px;padding:10px 18px!important;margin:0!important;height:auto!important;min-height:65px;border-bottom:1px solid var(--border);background:#102b1a!important}
.osf-head .osf-heading{flex:1;min-width:0}.osf-head h2{font:700 19px/1.3 system-ui!important;color:var(--ink)!important;margin:0!important;letter-spacing:0!important}.osf-head p{font-size:12px;margin:2px 0 0;color:var(--muted)}
.osf-modal .osf-body{height:calc(100% - 66px);overflow:auto;overscroll-behavior:contain;padding:18px 24px 30px;scrollbar-gutter:stable}
.osf-modal button,.osf-modal input,.osf-modal select{font:inherit!important;letter-spacing:normal!important;text-transform:none!important}.osf-modal button,.osf-modal a.osf-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 13px;border:1px solid #64825f;border-radius:9px;background:#183d25;color:#f2edcd;text-decoration:none;cursor:pointer;margin:0;font-size:14px!important}
.osf-modal button:disabled{opacity:.5;cursor:default}.osf-modal button.osf-primary{background:#e5d076;color:#142317;border-color:#e5d076;font-weight:750}
.osf-modal a{color:var(--gold);text-underline-offset:3px;overflow-wrap:anywhere}.osf-modal :focus-visible{outline:3px solid #efd254;outline-offset:3px}
.osf-modal h3{font:700 21px/1.35 system-ui!important;margin:12px 0;color:#efeadd!important;letter-spacing:normal!important}.osf-modal p{font:inherit!important;color:inherit;line-height:1.6!important;margin:9px 0;max-width:100%!important}.osf-modal .osf-small{font-size:13px!important;color:var(--muted)!important;line-height:1.55!important}
.osf-modal .osf-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}.osf-modal .osf-label{font-size:12px!important;color:#e7d484!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:750!important}
.osf-modal .osf-claim{background:#112c1a;border-left:3px solid #d5bc63;border-radius:0 10px 10px 0;padding:14px 18px;margin:0 0 18px}
.osf-modal .osf-source{padding:18px 20px;border:1px solid #3e5b43;border-radius:12px;margin:18px 0;background:#0d2415}.osf-modal .osf-pill{display:inline-block;font-size:12px;padding:4px 8px;border:1px solid #698266;border-radius:6px;color:#e9dfb6;margin-bottom:6px}
.osf-modal .osf-note{padding:10px 14px;border-left:3px solid #c0ad61;background:#18341f;font-size:14px;margin:14px 0;color:#d8e0cd}
.osf-modal blockquote{border:0;border-left:3px solid #7ea47a;margin:12px 0;padding:12px 17px;background:#17351f;font:16px/1.7 Georgia,serif;color:#f3f0d9;white-space:pre-wrap}
.osf-modal details{border-top:1px solid #36543c;padding:10px 0;margin:14px 0}.osf-modal summary{cursor:pointer;min-height:40px;color:#dace9c;font-weight:650}
.osf-modal .osf-located{margin-top:14px;padding:10px 0;border-top:1px solid #39523d}.osf-modal .osf-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:12px;border:1px solid #46614a;border-radius:10px;background:#102819;margin:14px 0}
.osf-controls label{display:flex;flex-direction:column;gap:3px;color:#d6dfcd;font-size:12px;min-width:0}.osf-controls label.osf-query{flex:1;min-width:180px}
.osf-modal input,.osf-modal select{background:#0b1f11;color:#eeeede;border:1px solid #667c64;border-radius:8px;padding:9px 10px;min-height:43px;max-width:100%}.osf-modal input[type=number]{width:84px}
.osf-modal .osf-canvas-scroll{border:1px solid #56725a;border-radius:9px;background:#dbe1d4;overflow:auto;overscroll-behavior:contain;max-height:65vh;padding:8px}
.osf-modal .osf-paper{position:relative;background:white;line-height:0;margin:0 auto;min-width:280px;width:100%}.osf-modal .osf-paper img{width:100%!important;height:auto!important;display:block!important;max-width:none!important}.osf-modal .osf-marks{position:absolute;inset:0;pointer-events:none}.osf-modal .osf-mark{position:absolute;background:#efbc2166;border:1px solid #967000aa}.osf-modal .osf-mark.active{background:#ffca4580;outline:1px solid #765600}
.osf-modal mark{color:#142514;background:#e7d27b;padding:0 2px}.osf-modal .osf-page-status{font-size:13px;color:#d4dfca;margin:8px 0}
.osf-modal .osf-loading{padding:32px 10px;color:#d4dfca}.osf-modal .osf-error{border-left:4px solid #df9470;padding:14px 16px;background:#40221a;color:#ffe1d4}.osf-modal .osf-chunk{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;color:#c4d0bd}
.osf-context-access{margin:10px 0;font:13px/1.5 system-ui;color:inherit}.osf-context-access a{color:inherit;text-decoration:underline}
@media(max-width:650px){.osf-modal{width:calc(100vw - 8px);height:calc(100dvh - 8px);max-width:calc(100vw - 8px)!important;max-height:calc(100dvh - 8px)!important;border-radius:10px!important}.osf-modal header.osf-head{padding:8px 10px!important;min-height:66px}.osf-head h2{font-size:16px!important}.osf-modal .osf-body{padding:12px 12px 22px}.osf-modal .osf-source{padding:12px}.osf-modal .osf-claim{padding:12px}.osf-modal .osf-controls{gap:6px;padding:8px}.osf-modal .osf-controls button{font-size:12px!important;padding:8px}.osf-modal .osf-controls .osf-query{min-width:100%;flex:auto}.osf-modal blockquote{padding:10px;font-size:15px}.osf-modal .osf-canvas-scroll{max-height:60vh;padding:2px}.osf-modal p{overflow-wrap:anywhere}.osf-modal .osf-row{gap:7px}.osf-button{min-height:44px!important}}
@media(prefers-reduced-motion:reduce){.osf-modal *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* A flex column keeps the header out of the scrolling content, including on mobile. */
.osf-modal[open]{display:flex!important;flex-direction:column!important}.osf-modal header.osf-head{flex:0 0 auto!important}.osf-modal .osf-body{height:auto!important;flex:1 1 auto;min-height:0!important}.osf-modal .osf-head .osf-heading p{font-size:12px!important;line-height:1.4!important;margin:3px 0 0!important}.osf-modal .osf-search-options{flex:1;min-width:210px;margin:0!important;padding:0!important;border:0!important}.osf-modal .osf-search-options summary{font-size:13px;min-height:43px}.osf-modal .osf-source-address{margin:7px 0!important;padding:0!important;border:0!important}.osf-modal .osf-source-address summary{font-size:13px;min-height:38px}
@media(max-width:650px){.osf-modal .osf-search-options{flex-basis:100%;min-width:0}.osf-modal .osf-body>h3{font-size:18px!important}.osf-modal .osf-body>.osf-label{display:none}.osf-modal .osf-controls{margin:10px 0}.osf-modal .osf-row{margin:8px 0}}

/* D7 modal styles only; no global typography overrides. */
.osd7-dialog{color:var(--light);background:#092116;border:1px solid var(--gold);width:min(820px,95vw);max-height:85vh;border-radius:13px;padding:0;box-shadow:0 16px 75px #000a}.osd7-dialog::backdrop{background:#000b}.osd7-dialog header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;border-bottom:1px solid var(--line)}.osd7-dialog header h2{font-size:22px;margin:0}.osd7-body{padding:18px 23px;max-height:calc(85vh - 82px);overflow:auto}.osd7-reference{padding:14px;border:1px solid var(--line);border-radius:9px;margin:14px 0;background:#102e1e;overflow-wrap:anywhere}.osd7-reference p{margin:5px 0}.osd7-source{border-top:1px solid var(--line);padding:14px 0}.osd7-source h3{margin:5px 0 9px;font-size:18px}.osd7-source p{margin:6px 0;overflow-wrap:anywhere}.osd7-source a{display:inline-block;min-height:40px;padding:8px 0}.osd7-status{font-size:12px;color:var(--gold);font-weight:800;text-transform:uppercase}.osd7-outside{border:1px solid #a48b52;background:#173522;padding:17px 20px;border-radius:12px;margin:10px 0}.osd7-action-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:14px}.osd7-small{font-size:13px;color:var(--muted)}.osd7-inline-link{color:var(--gold);font-weight:600}.osd7-footer{border-top:1px solid var(--line);font-size:13px;color:var(--muted);margin-top:15px;padding-top:10px}@media(max-width:620px){main{padding:22px 14px}.top{padding:14px}.top nav{gap:11px}.osd7-dialog{width:100vw;max-width:100vw;max-height:95vh;border-radius:8px}.osd7-body{padding:14px;max-height:calc(95vh - 70px)}}
