:root{color-scheme:light;--bg: #f4f5f7;--panel: #ffffff;--text: #1d2329;--muted: #5f6b76;--line: #cfd6dd;--accent: #246bfe;--accent-strong: #174ec2;--highlight-fill: rgb(255 214 51 / 38%);--highlight-line: rgb(185 116 0 / 90%);--danger: #a32727}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);overflow:hidden}button,input,textarea{font:inherit}button{min-height:36px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);padding:0 12px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}button:hover{border-color:var(--accent)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{height:100vh;display:grid;grid-template-rows:auto 1fr}.toolbar{min-height:56px;border-bottom:1px solid var(--line);background:var(--panel);display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:10px 14px}.toolbar[hidden]{display:none}.stale-page-notice{margin-right:auto;display:flex;align-items:center;gap:10px;color:var(--danger);font-size:14px;font-weight:600}.stale-page-notice[hidden]{display:none}#reloadButton{border-color:var(--danger);color:var(--danger)}#reloadButton:hover{border-color:var(--danger);background:#fff2f2}.url-field{display:grid;grid-template-columns:auto minmax(260px,520px);align-items:center;gap:8px;color:var(--muted);font-size:13px}.url-field input{height:36px;border:1px solid var(--line);border-radius:6px;padding:0 10px;color:var(--text)}.viewer-layout{min-height:0;overflow:hidden;display:grid;grid-template-columns:minmax(280px,360px) 1fr}.command-panel{border-right:1px solid var(--line);background:var(--panel);padding:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr) minmax(100px,.38fr);gap:12px;min-height:0}.command-panel h1{margin:0;font-size:20px;line-height:1.2}.panel-heading{display:grid;gap:8px}.session-badge{display:grid;gap:3px;color:var(--muted);font-size:12px;line-height:1.3}.session-badge code{display:block;overflow-wrap:anywhere;color:var(--text);font-size:12px}.command-panel p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}.command-panel code{color:var(--accent-strong)}.panel-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.panel-tab{min-height:40px;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);font-weight:600}.panel-tab:hover{border-color:var(--line)}.panel-tab.is-active{border-bottom-color:var(--accent);color:var(--accent-strong)}.tab-panel{min-height:0}.tab-panel[hidden]{display:none}.bookmarks-panel,.command-tab-panel{display:flex;flex-direction:column;gap:12px}.bookmarks-panel>p{font-size:13px}.bookmark-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bookmark-actions button{min-width:0}.bookmark-list{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.bookmark-entry{width:100%;min-height:58px;padding:9px 10px;display:grid;justify-items:start;align-content:center;gap:4px;text-align:left}.bookmark-entry span{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.bookmark-entry small{color:var(--muted)}.bookmark-empty{padding:18px 0;text-align:center}#commandInput{width:100%;height:clamp(220px,34vh,430px);min-height:180px;max-height:430px;resize:none;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:12px;line-height:1.45;color:var(--text);background:#fbfcfd}.primary-button{color:#fff;border-color:var(--accent);background:var(--accent)}.primary-button:hover:not(:disabled){border-color:var(--accent-strong);background:var(--accent-strong)}.primary-button:disabled{border-color:var(--line);background:#e4e8ec;color:#87919a;cursor:default}#statusLog{margin:0;overflow:auto;border:1px solid var(--line);border-radius:6px;padding:10px;color:var(--muted);background:#fbfcfd;white-space:pre-wrap}.viewer{overflow-x:hidden;overflow-y:auto;min-width:0;min-height:0;padding:28px 0}.page-host{display:flex;flex-direction:column;align-items:center;gap:22px;width:100%}.pdf-page{position:relative;background:#fff;box-shadow:0 1px 2px #00000029,0 10px 30px #0000001f;cursor:crosshair}.pdf-page.is-dragging-region{-webkit-user-select:none;user-select:none}.pdf-page canvas{position:relative;z-index:0;display:block}.textLayer{position:absolute;inset:0;z-index:1;overflow:clip;line-height:1;text-align:initial;transform-origin:0 0;-webkit-text-size-adjust:none;text-size-adjust:none;pointer-events:none}.textLayer span{position:absolute;color:transparent;white-space:pre;cursor:text;transform-origin:0% 0%;-webkit-user-select:text;user-select:text;pointer-events:auto}.textLayer br{position:absolute}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent){z-index:1;font-size:calc(var(--total-scale-factor) * var(--font-height));transform:rotate(var(--rotate, 0deg)) scaleX(var(--scale-x, 1)) scale(calc(1 / var(--min-font-size, 1)))}.textLayer .markedContent{display:contents}.textLayer ::selection{color:transparent;background:#246bfe47}.textLayer ::-moz-selection{color:transparent;background:#246bfe47}.textLayer .endOfContent{position:absolute;inset:100% 0 0;z-index:0;-webkit-user-select:none;user-select:none;cursor:default}.textLayer.selecting .endOfContent{top:0}.remote-highlight-layer{position:absolute;inset:0;z-index:2;pointer-events:none}.region-draft{position:absolute;z-index:3;pointer-events:none;border:2px dashed var(--accent);background:#246bfe29}.remote-highlight{position:absolute;border-radius:2px;background:var(--highlight-fill);outline:2px solid var(--highlight-line);outline-offset:-1px}.remote-highlight.is-pulsing{animation:pulse-highlight .9s ease-out 2}.page-placeholder{width:min(72vw,780px);min-height:240px;border:1px dashed var(--line);border-radius:6px;display:grid;place-items:center;color:var(--muted);background:#fff}.status-error{color:var(--danger)}@keyframes pulse-highlight{0%{box-shadow:0 0 #ffd633a6}to{box-shadow:0 0 0 16px #ffd63300}}@media(max-width:860px){.toolbar{align-items:stretch;flex-wrap:wrap}.toolbar{justify-content:stretch}.url-field{grid-template-columns:1fr;flex:1 1 100%}.viewer-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(420px,1fr)}.command-panel{border-right:0;border-bottom:1px solid var(--line);grid-template-rows:auto auto minmax(220px,auto) 110px}.viewer{padding:18px 12px}}
