/* PlotProfound V9.0.16 — contextual, private reader tools; no article markup changes. */
.ppv9-reader-rail{position:fixed;z-index:950;top:34%;left:max(10px,calc((100vw - 1200px)/2 - 108px));display:flex;flex-direction:column;gap:7px;max-width:100px;font-family:system-ui,Arial,sans-serif}
.ppv9-rail-form{margin:0!important;display:block}
.ppv9-rail-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:78px;min-height:60px;padding:7px 5px!important;border:1px solid #bba47a!important;border-radius:10px!important;box-shadow:0 5px 21px #00150e2b!important;color:#174238!important;background:#f8f2e5!important;text-decoration:none!important;cursor:pointer;font:700 10px/1.25 system-ui,Arial,sans-serif!important;text-align:center;max-width:94px}
.ppv9-rail-action:hover,.ppv9-rail-action:focus-visible{background:#e8eee5!important;outline:2px solid #b98b46;outline-offset:2px}
.ppv9-rail-action[aria-pressed="true"]{background:#dce9dc!important;border-color:#517c68!important}
.ppv9-rail-icon{font:normal 24px/1.1 Georgia,serif;color:#a47632;min-width:26px}
.ppv9-rail-action[aria-pressed="true"] .ppv9-rail-icon{color:#275c45}
.ppv9-rail-label{max-width:88px;overflow-wrap:break-word;color:#214a3c}
.ppv9-selection-button,.ppv9-annotation-composer{position:fixed;z-index:100020;font-family:system-ui,Arial,sans-serif;color:#163d32}
.ppv9-selection-button[hidden],.ppv9-annotation-composer[hidden],.ppv9-annotation-status[hidden]{display:none!important}
.ppv9-selection-button button{border:1px solid #b9a072;border-radius:99px;background:#143b31;color:#fff5df;cursor:pointer;font:700 12px/1.25 system-ui,Arial,sans-serif;padding:10px 14px;box-shadow:0 10px 35px #0006}
.ppv9-annotation-composer{width:min(360px,calc(100vw - 24px));max-height:min(520px,calc(100dvh - 24px));overflow:auto;padding:16px;border:1px solid #b79d6b;border-radius:12px;background:#fffaf0;box-shadow:0 19px 57px #0005}
.ppv9-annotation-composer form{margin:0!important;display:grid;gap:8px}
.ppv9-compose-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font:normal 21px Georgia,serif;color:#173c33;border-bottom:1px solid #d9c8a6;padding-bottom:11px}
.ppv9-compose-close{background:transparent!important;border:0!important;color:#28473d!important;font:26px/1 system-ui,sans-serif!important;padding:0 5px!important;cursor:pointer}
.ppv9-compose-label{font:700 11px/1.4 system-ui,Arial,sans-serif;color:#4c6559}
.ppv9-annotation-composer textarea,.ppv9-note-edit textarea{width:100%;max-width:100%;min-height:60px;box-sizing:border-box;background:#fffdf8;color:#153b30!important;border:1px solid #c9b99e;border-radius:6px;padding:10px;font:14px/1.55 Georgia,serif!important;resize:vertical}
.ppv9-annotation-composer textarea[readonly]{background:#ece6d5;font-style:italic}
.ppv9-compose-actions{display:flex;gap:9px;margin-top:7px}
.ppv9-compose-save,.ppv9-note-save{border:0;border-radius:6px;background:#174e3f;color:white;cursor:pointer;padding:10px 14px;font-weight:700}
.ppv9-compose-delete{background:transparent;border:1px solid #ad7058;color:#873c2d;cursor:pointer;border-radius:6px;padding:10px 13px}
.ppv9-annotation-status{position:fixed;z-index:100025;bottom:20px;left:50%;transform:translateX(-50%);padding:10px 17px;border-radius:8px;border:1px solid #7da38d;background:#193f34;color:#fff8e6;box-shadow:0 12px 34px #0005;font:700 12px/1.5 system-ui,Arial,sans-serif;max-width:min(430px,90vw);text-align:center}
.ppv9-annotation-status.ppv9-error{background:#632e2c;border-color:#bd766e}
.ppv9-note-pin{position:absolute;z-index:980;width:27px;height:27px;border-radius:50%;border:1px solid #b99151;background:#1c473a;color:#fff8de;display:grid;place-items:center;cursor:pointer;font:16px Georgia,serif;box-shadow:0 2px 10px #081a1470}
.ppv9-note-pin:focus-visible{outline:3px solid #ddbc7c;outline-offset:3px}
::highlight(ppv9-private){background:#ead28b;color:#1e332c;text-decoration:underline;text-decoration-color:#a9782e}
.ppv9-reading-profile{margin:25px 0;padding:18px 0;border-top:1px solid #d2c1a7;color:#1b4035}
.ppv9-reading-profile h2{font:normal clamp(24px,3vw,32px) Georgia,serif;color:#173b32;margin:5px 0 8px}
.ppv9-reading-eyebrow{font:800 10px/1.3 system-ui,Arial,sans-serif;letter-spacing:.15em;color:#9b7137;text-transform:uppercase}
.ppv9-shelf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}
.ppv9-shelf{padding:21px;border:1px solid #d8ccb7;border-radius:9px;background:#f8f4e9}
.ppv9-shelf h3{font:normal 23px Georgia,serif;color:#173b32;margin:0 0 12px}
.ppv9-shelf>a{display:block;padding:9px 0;border-bottom:1px solid #e3dac9;text-decoration:none!important;color:#245b4c!important;font-size:14px}
.ppv9-shelf-empty{color:#5e7067!important;font-size:13px!important}
.ppv9-personal-notes{margin-top:24px}
.ppv9-personal-notes .ppv9-notes-heading p{color:#5c6f63;margin:5px 0 16px}
.ppv9-swiper-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 12px}
.ppv9-swipe-counter{color:#5b6d61;font:700 12px system-ui,Arial,sans-serif}
.ppv9-swipe-controls{display:flex;gap:7px}
.ppv9-swipe-controls button{border:1px solid #aa916e;background:#e4e9df;border-radius:7px;color:#21483c;min-width:42px;min-height:37px;cursor:pointer;font-size:19px}
.ppv9-swipe-controls button:disabled{opacity:.35;cursor:default}
.ppv9-article-swiper{display:flex;overflow-x:auto;gap:15px;scroll-snap-type:x mandatory;scroll-padding-inline:3px;overscroll-behavior-x:contain;scrollbar-color:#a9a78d #eae7dc;padding:2px 3px 15px;touch-action:pan-x pan-y}
.ppv9-article-slide{flex:0 0 calc(100% - 6px);scroll-snap-align:start;min-width:0;min-height:230px;border:1px solid #d7c6aa;border-radius:10px;padding:clamp(15px,2vw,24px);background:#f8f4ea}
.ppv9-slide-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid #d8cab3;padding-bottom:13px;margin-bottom:13px}
.ppv9-slide-top h3{font:normal clamp(19px,2.6vw,26px) Georgia,serif;color:#173e31;margin:5px 0 2px}
.ppv9-slide-top a{font-size:12px;font-weight:700;color:#24634f!important;white-space:nowrap}
.ppv9-no-access{font:italic 12px Georgia,serif;color:#735d4a}
.ppv9-slide-notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:11px;align-items:start}
.ppv9-note-card{min-width:0;padding:15px 17px;border:1px solid #d5c5a8;border-radius:8px;background:#fffaf0}
.ppv9-note-card blockquote{margin:0 0 11px;border-left:3px solid #c5944c;background:#f2e9d5;padding:10px 12px;color:#28483c;font:italic 15px/1.55 Georgia,serif;overflow-wrap:anywhere}
.ppv9-note-card p{white-space:normal;color:#224537}
.ppv9-note-card form{margin:0!important}
.ppv9-note-edit{margin:12px 0 5px}
.ppv9-note-edit summary{cursor:pointer;font:700 12px system-ui,Arial,sans-serif;color:#23614b}
.ppv9-note-edit label{display:grid;gap:7px;margin:12px 0;color:#2c5946;font:700 12px system-ui,Arial,sans-serif}
.ppv9-note-remove{border:0;background:none;color:#8c4932;cursor:pointer;padding:7px 0;text-decoration:underline;font-size:12px}
.ppv9-swiper-hint{margin:8px 0;font:11px system-ui,Arial,sans-serif;color:#6d7569;text-align:center}
@media(max-width:1050px){.ppv9-reader-rail{left:8px}.ppv9-rail-action{min-width:64px;max-width:74px}.ppv9-rail-label{font-size:9px}}
@media(max-width:760px){
 body:has(.ppv9-reader-rail){padding-bottom:85px!important}
 .ppv9-reader-rail{top:auto;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 12px);transform:translateX(-50%);flex-direction:row;align-items:stretch;max-width:calc(100vw - 18px);width:max-content;gap:4px;background:#f8f1e4;border:1px solid #ccb994;border-radius:13px;padding:5px;box-shadow:0 11px 29px #0004}
 .ppv9-rail-action{min-width:62px;max-width:85px;min-height:51px;border:0!important;box-shadow:none!important;background:transparent!important;padding:4px 7px!important}
 .ppv9-rail-icon{font-size:21px}.ppv9-rail-label{font-size:9px}
 .ppv9-annotation-status{bottom:90px}.ppv9-note-pin{width:29px;height:29px}
 .ppv9-shelf-grid{grid-template-columns:1fr}.ppv9-slide-top{flex-direction:column}.ppv9-slide-top a{white-space:normal}
 .ppv9-article-swiper{gap:9px}.ppv9-article-slide{flex-basis:calc(100% - 5px)}
}
@media(prefers-reduced-motion:reduce){.ppv9-article-swiper{scroll-behavior:auto}}
/* V9.0.18 progress markers in the established reader shelf */
.ppv9-shelf .ppv9-shelf-reading-entry{display:block;padding:7px 0;border-bottom:1px solid #d9d0bd}
.ppv9-shelf .ppv9-shelf-reading-entry a{display:block;margin:0;border:0;padding:0}
.ppv9-shelf .ppv9-reading-meter{height:5px;background:#e5ddce;border-radius:10px;overflow:hidden;margin-top:7px}
.ppv9-shelf .ppv9-reading-meter>i{height:100%;background:#3a715d;display:block;border-radius:10px}
.ppv9-shelf .ppv9-reading-pct{color:#58645a;font:11px/1.4 system-ui,Arial,sans-serif}

/* V9.0.19: bound large shelves and note groups so the Reading Room remains navigable. */
.ppv9-reading-profile .ppv9-shelf-scroll{max-height:300px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#a9946e #eee8dc;padding-right:5px}
.ppv9-reading-profile .ppv9-slide-notes{max-height:370px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#b39872 #eee8dc;padding-right:5px}
.ppv9-reading-profile .ppv9-shelf-scroll:focus-visible,.ppv9-reading-profile .ppv9-article-swiper:focus-visible{outline:3px solid #ab8248;outline-offset:3px}

/* V9.0.20: deliberate Mark as Read control at the actual end of the article */
.ppv9-reading-complete{position:relative;overflow:hidden;max-width:950px;margin:24px auto 32px;padding:25px 24px;background:#f8f1e4;border:1px solid #cdbb98;border-radius:12px;color:#173b32;text-align:center;box-shadow:0 7px 25px #152f2212}
.ppv9-reading-complete .ppv9-complete-eyebrow{display:block;color:#99703b;text-transform:uppercase;letter-spacing:.13em;font:700 11px/1.4 system-ui,Arial,sans-serif}
.ppv9-reading-complete h2{font:29px/1.2 Georgia,serif;color:#164536;margin:7px 0}
.ppv9-reading-complete p{font:14px/1.5 system-ui,Arial,sans-serif;color:#4b5d51;margin:0 0 15px}
.ppv9-complete-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:185px;min-height:46px;padding:11px 21px;border-radius:7px;border:1px solid #a98347;background:#f2e0bf;color:#3a4b37;font:700 14px/1.25 system-ui,Arial,sans-serif;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s}
.ppv9-complete-button.is-complete{background:#235f49;border-color:#235f49;color:#fff9ec;box-shadow:0 0 0 3px #caa96a7d,0 0 21px #bda06376}
.ppv9-complete-button:hover{transform:translateY(-2px)}
.ppv9-complete-button:focus-visible{outline:3px solid #a77a3b;outline-offset:3px}
.ppv9-complete-button .ppv9-complete-sparkles{position:absolute;inset:-17px -25px auto auto;font-size:23px;color:#dfb45f;opacity:0;pointer-events:none;white-space:nowrap}
.ppv9-complete-button.celebrate .ppv9-complete-sparkles{animation:ppv9-sparkle .95s ease-out both}
.ppv9-complete-button.celebrate{animation:ppv9-glow .85s ease-out both}
.ppv9-complete-status{display:block;min-height:20px;margin-top:9px;font:12px system-ui,Arial,sans-serif;color:#2e5d4c}
@keyframes ppv9-sparkle{0%{opacity:0;transform:translateY(15px) scale(.4)}38%{opacity:1;transform:translateY(-6px) scale(1.15)}100%{opacity:0;transform:translateY(-27px) scale(.85)}}
@keyframes ppv9-glow{0%{box-shadow:0 0 0 3px #caaf78}40%{box-shadow:0 0 0 10px #e9c77d66,0 0 29px #d4ad6eaa}100%{box-shadow:0 0 0 3px #caa96a7d}}
@media(prefers-reduced-motion:reduce){.ppv9-complete-button,.ppv9-complete-button.celebrate,.ppv9-complete-button.celebrate .ppv9-complete-sparkles{animation:none!important;transition:none!important;transform:none!important}}
