@import url('./viewer-annotations.css');
:root{--viewer-width:min(44vw,720px)}
.source-panel{position:fixed;inset:0 0 0 auto;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;padding:0;border:0;background:var(--surface);color:var(--ink);overflow:hidden}
.source-panel[open]{display:flex;flex-direction:column}
.source-panel::backdrop{background:var(--backdrop)}
.panel-header{flex-shrink:0;padding:var(--s2) var(--s3);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--s1)}
.panel-header h2{flex:1;min-width:0;font-size:var(--text-sm);line-height:1.5;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.panel-actions{flex-shrink:0;flex-wrap:nowrap;gap:0}
.panel-actions .button{padding:var(--s2);font-size:var(--text-sm)}
.panel-chat{display:none}
.panel-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:var(--s3);scroll-padding:var(--s3)}
.viewer-content,.viewer-page-body{gap:var(--s3)}
.viewer-metadata{gap:var(--s1) var(--s2)}
.source-panel .page-controls{gap:var(--s2)}
.source-panel .page-controls input{width:var(--rail-width)}
.source-panel .page-controls .button{padding-inline:var(--s2)}
.viewer-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s1);min-width:0}
.viewer-tool-group{display:flex;align-items:center;gap:0;max-width:100%;min-width:0}
.viewer-tool-group [role=status]{min-width:var(--s10);text-align:center}
.viewer-tool-group .button{flex-shrink:0}
.viewer-labelled-button{gap:var(--s2);padding:var(--s2) var(--s3);font-size:var(--text-sm);white-space:nowrap}
.source-panel .page-controls{gap:0}
.source-panel .page-controls input{width:calc(var(--s10) + var(--s3));padding-inline:var(--s1);text-align:center;appearance:textfield;-moz-appearance:textfield}
.source-panel .page-controls input::-webkit-inner-spin-button{appearance:none}
.source-panel .page-controls>span{white-space:nowrap;font-variant-numeric:tabular-nums}
.viewer-zoom-value{min-width:var(--s12);padding:var(--s2) var(--s1);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--muted)}
.viewer-clear-selection:disabled{visibility:hidden}
.viewer-toolbar [hidden]{display:none}
.viewer-toolbar [aria-pressed=true]{background:var(--accent-soft);color:var(--ink)}
.source-panel .page-viewport{max-height:calc(100dvh - var(--header-height) - var(--s10) - var(--s12));background:var(--subtle)}
.viewer-disclosure>summary{cursor:pointer;min-height:var(--control-size);align-content:center;font-size:var(--text-sm);font-weight:500}
.source-panel .highlight{border:0}
.source-panel .chat-evidence{border:0;border-radius:0;padding:0}
.source-panel .chat-evidence>h3:first-child{margin-top:0}
@media(min-width:1200px){
  body:has(.source-panel[open])>#app{width:calc(100% - var(--viewer-width))}
  .source-panel{width:var(--viewer-width);border-left:1px solid var(--border)}
  .panel-chat{display:inline-flex}
  body:has(.source-panel[open]) .chat-transcript{padding-inline:var(--s5)}
  body:has(.source-panel[open]) .chat-bottom{padding-inline:var(--s4)}
}
@media(max-width:767px){
  .source-panel .page-viewport{max-height:calc(100dvh - var(--header-height) - var(--s10)*2 - var(--s12))}
  .viewer-toolbar .page-controls{margin-right:auto}
}
