/* VIVI V1.6 — uses the existing project palette and typography. */
.reader-launch{padding:28px;border:1px solid var(--gold-line);border-radius:18px;background:var(--panel);line-height:1.8}.reader-launch h1{font-family:var(--serif);font-size:32px}.reader-launch p{color:var(--muted);max-width:700px;margin:12px 0 22px}
.reader-workspace{display:none;position:fixed;inset:0;z-index:150;background:var(--bg);color:var(--ink);font-family:var(--sans);overflow:hidden;flex-direction:column}.reader-workspace.open{display:flex}.reader-top{padding:14px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;background:var(--panel)}.reader-brand{font-family:var(--serif);font-size:22px;color:var(--gold);margin-right:auto}.reader-brand small{display:block;font:10px var(--sans);letter-spacing:1.5px;color:var(--muted);margin-top:5px}.reader-workspace button,.reader-workspace select,.reader-workspace input{font:inherit}.reader-workspace button{cursor:pointer}.reader-workspace button:disabled{opacity:.4;cursor:default}.reader-workspace :focus-visible{outline:2px solid var(--gold);outline-offset:3px}.reader-top .ghost-btn{white-space:nowrap}.reader-version{font-size:12px;color:var(--muted)}.reader-columns{flex:1;min-height:0;display:grid;grid-template-columns:292px minmax(0,1fr)}.reader-side{border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:var(--panel)}.reader-filters{padding:18px;display:grid;gap:9px;border-bottom:1px solid var(--line)}.reader-filters input,.reader-filters select,.reader-direct{width:100%;min-width:0;background:var(--soft);border:1px solid var(--line);color:var(--ink);padding:10px;border-radius:8px;font-size:12px}.reader-filters label{font-size:11px;color:var(--muted)}.reader-filters label input{width:auto;margin-right:7px}.reader-count{font-size:10px;letter-spacing:1px;color:var(--muted);padding:0 18px 12px}.reader-results{overflow:auto;flex:1;min-height:0;padding:0 10px 18px}.reader-result{display:block;text-align:left;width:100%;border:1px solid transparent;background:transparent;color:var(--ink);padding:12px;border-radius:10px;margin:3px 0}.reader-result:hover{background:var(--soft)}.reader-result[aria-current=true]{border-color:var(--gold-line);background:var(--gold-glow)}.reader-result b{display:flex;gap:8px;color:var(--gold);font-size:13px}.reader-result small{display:block;font-size:11px;line-height:1.5;margin-top:6px;color:var(--muted)}.reader-result .reader-snippet{color:var(--ink);opacity:.8}.reader-center{display:flex;flex-direction:column;min-width:0;min-height:0}.reader-toolbar{padding:12px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.reader-direct{width:105px}.reader-status{margin-left:auto;font-size:10px;color:var(--muted)}.reader-article{overflow:auto;flex:1;min-height:0;scroll-behavior:auto;overscroll-behavior:contain}.reader-paper{max-width:820px;padding:40px clamp(18px,4vw,64px) 100px;margin:0 auto;font-family:'Courier New',monospace;font-size:var(--reader-font,16px);line-height:1.65}.reader-scene-kicker{font:10px var(--sans);letter-spacing:1.8px;color:var(--gold);margin-bottom:14px}.reader-paper h2{font:700 1em/1.6 'Courier New',monospace;white-space:pre-wrap;margin:16px 0 26px}.reader-line{white-space:pre-wrap;overflow-wrap:anywhere;min-height:1em;tab-size:4}.reader-line.dialogue{padding-left:clamp(8px,6%,40px);padding-right:clamp(0px,4%,30px)}.reader-line.speaker{font-weight:bold;margin-top:12px;padding-left:22%;color:var(--gold)}.reader-line.parenthetical{padding-left:18%;font-style:italic}.reader-line.transition{text-align:right;margin:12px 0}.reader-line.hit{background:var(--gold-glow);outline:1px solid var(--gold-line);border-radius:4px}.reader-page{margin:24px 0 18px;border-top:1px solid var(--line);padding-top:10px;font:10px var(--sans);color:var(--muted);letter-spacing:1px}.reader-context{font:12px/1.7 var(--sans);color:var(--muted);padding:14px 18px;border:1px solid var(--line);border-radius:10px;margin-bottom:24px}.reader-context button{margin:6px 8px 0 0}.reader-warning{border-color:var(--danger);color:var(--ink)}.reader-empty{padding:35px 24px;color:var(--muted);line-height:1.8}.reader-bottom{display:flex;gap:12px;justify-content:space-between;padding:12px 22px;border-top:1px solid var(--line);background:var(--panel)}.reader-characterization{display:none;min-height:0;border-left:1px solid var(--line);overflow:auto;background:var(--panel)}.reader-workspace.split .reader-columns{grid-template-columns:248px minmax(0,1fr) minmax(340px,39%)}.reader-workspace.split .reader-characterization{display:block}.reader-characterization .modal-backdrop{display:block!important;position:static!important;background:none!important;padding:0!important;backdrop-filter:none!important;height:auto!important}.reader-characterization .modal{width:100%!important;max-width:none!important;max-height:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;transform:none!important;margin:0!important;animation:none!important}.reader-characterization .modal-body{overflow:visible!important;max-height:none!important}.reader-characterization .modal-head{position:sticky;top:0;background:var(--panel);z-index:2;padding:20px}.reader-characterization .modal-head .close{display:block}.reader-characterization .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-mobile-tabs{display:none}.reader-pdf{display:none;flex:1;min-height:0;flex-direction:column}.reader-pdf iframe{flex:1;width:100%;min-height:0;border:0;background:white}.reader-workspace.pdf-mode .reader-columns{display:none}.reader-workspace.pdf-mode .reader-pdf{display:flex}.reader-admin{display:none;overflow:auto;padding:24px clamp(18px,5vw,80px);flex:1;min-height:0;line-height:1.8}.reader-workspace.admin-mode .reader-columns{display:none}.reader-workspace.admin-mode .reader-admin{display:block}.reader-admin .card{margin:16px 0}.reader-admin label{display:block;margin:12px 0}.reader-admin input{display:block;margin:8px 0;max-width:100%}.reader-admin article{border-top:1px solid var(--line);padding:16px 0}.reader-admin pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:15px;background:var(--soft);border-radius:10px;font-size:12px}.reader-font{display:flex;gap:8px;align-items:center;font-size:11px;color:var(--muted)}.reader-font input{width:80px}.reader-shade{padding:40px;line-height:1.8;color:var(--muted)}
@media(max-width:1199px){.reader-workspace.split .reader-columns{grid-template-columns:210px minmax(0,1fr) minmax(310px,39%)}.reader-workspace.split .reader-paper{padding-left:18px;padding-right:18px}}
@media(max-width:900px){.reader-top{padding:12px;gap:8px;flex-wrap:wrap}.reader-brand{font-size:19px}.reader-brand small{font-size:8px}.reader-version{font-size:10px}.reader-top .ghost-btn{padding:8px;font-size:10px}.reader-columns,.reader-workspace.split .reader-columns{display:flex;flex-direction:column}.reader-side{display:none;flex:1;border:0}.reader-center{flex:1}.reader-workspace.show-list .reader-side{display:flex}.reader-workspace.show-list .reader-center,.reader-workspace.show-list .reader-characterization{display:none}.reader-mobile-tabs{display:flex;padding:8px 12px;gap:8px;background:var(--panel);border-bottom:1px solid var(--line)}.reader-mobile-tabs button{flex:1}.reader-workspace.split .reader-characterization{display:none}.reader-workspace.split.show-characterization .reader-characterization{display:block;flex:1;border:0}.reader-workspace.show-characterization .reader-center{display:none}.reader-toolbar{padding:10px 12px}.reader-paper{padding:26px 18px 70px}.reader-bottom{padding:10px 12px}.reader-status{font-size:9px}.reader-characterization .modal-head{padding:16px}.reader-font input{width:65px}.reader-result{padding:14px}.reader-workspace .reader-line{line-height:1.7}}
