button,input,textarea{font:inherit}button{border:1px solid var(--border);border-radius:6px;background:var(--sidebar);color:var(--secondary-foreground);padding:7px 10px;font-size:.875rem;cursor:pointer;min-height:36px}button:hover{background:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--primary);color:var(--primary-foreground)}a{color:var(--link)}input,textarea{background:var(--popover);color:var(--foreground);border:1px solid var(--input);border-radius:6px;padding:10px;max-width:100%}label{display:grid;gap:6px;margin:12px 0}button[hidden],[hidden]{display:none!important}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spacer{flex:1}.research-page .topbar-inner{flex-direction:row;gap:24px;align-items:center}.research-page .brand{min-height:56px}.research-toolbar{display:flex;align-items:center;gap:8px;padding:8px 20px;border-bottom:1px solid var(--border);background:var(--sidebar);flex-wrap:wrap;font-size:.875rem}.research-toolbar #save-state{color:var(--muted-foreground);font-size:.8125rem}.research-main{max-width:none;margin:0;padding:20px 24px 90px}.policy-meta h1{font-size:1.5rem;margin:0 0 16px}.metadata-image{border:0;padding:0;background:none;width:100%;display:block;min-height:0}.metadata-image img{width:100%;height:auto;display:block;border-radius:4px}.policy-meta details{margin:10px 0 18px;font-size:.8125rem}.policy-meta summary,.toc summary{color:var(--muted-foreground);cursor:pointer;padding:8px 0}dl{display:grid;grid-template-columns:100px 1fr;gap:8px}dt{color:var(--muted-foreground)}dd{margin:0;overflow-wrap:anywhere}.reading-grid{--left:48%;--right:30%;display:grid;grid-template-columns:minmax(0,var(--left)) 8px minmax(0,1fr) 8px minmax(0,var(--right));height:max(560px,calc(100dvh - 200px));margin-right:16px}.reading-pane{min-width:0;background:var(--background);display:flex;flex-direction:column;border-top:1px solid var(--border);overflow:hidden}.pane-header{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:10px 12px;border-bottom:1px solid var(--border);min-height:56px;background:var(--sidebar);flex-wrap:wrap}.pane-header h2{font-size:1rem;font-weight:600;margin:0}.pane-header button{font-size:.8125rem;padding:5px 8px}.splitter{background:var(--border);border:3px solid var(--background);cursor:col-resize;touch-action:none}.splitter:hover,.splitter:focus-visible{background:var(--ring)}.toc{padding:0 16px;border-bottom:1px solid var(--border);max-height:200px;overflow:auto}.toc a{display:block;padding:4px 0;font-size:.8125rem}#original{overflow:auto;padding:12px 20px 40px;line-height:1.8;color:var(--card-foreground);flex:1;overflow-wrap:anywhere;scroll-behavior:smooth}#original p{font:inherit;color:inherit;margin:14px 0}#original h2{font-size:1.25rem;margin:24px 0 12px}#original h3{font-size:1.0625rem;margin:22px 0 12px}#original h4,#original h5{font-size:1rem;line-height:1.8;margin:18px 0 10px}#original h5{background:var(--card);padding:8px}#original .source-block{scroll-margin-top:16px}#original .table-wrap{overflow:auto}table{border-collapse:collapse;font-size:.875rem;max-width:100%}th,td{border:1px solid var(--border);padding:8px;text-align:left}th{background:var(--muted);font-weight:500}.scroll-area{overflow:auto;padding:12px;flex:1;min-height:0}.empty{color:var(--muted-foreground);padding:12px;font-size:.875rem}.annotation{border:1px solid var(--border);border-radius:8px;margin:0 0 12px;padding:12px;background:var(--card)}.annotation.active{border-color:var(--ring)}.annotation blockquote{margin:0 0 8px;color:var(--secondary-foreground);border-left:2px solid var(--ring);padding-left:10px;font-size:.8125rem;white-space:pre-wrap;max-height:120px;overflow:auto}.annotation .body{font-size:.875rem;overflow-wrap:anywhere}.annotation .body p{font:inherit;color:var(--card-foreground)}.annotation .row{margin-top:8px;gap:4px}.annotation button{font-size:.75rem;padding:4px 7px;min-height:30px}.notice{padding:12px 16px;border:1px solid var(--border);border-radius:8px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0;font-size:.875rem}.error{background:var(--risk-surface);color:var(--risk-foreground);border-color:var(--risk-border)}.pane-tabs{display:none}.pane-tabs button[aria-pressed=true]{background:var(--accent);color:var(--foreground)}#section-menu{background:var(--popover);padding:12px 20px;display:flex;gap:20px}.ai-fab{position:fixed;right:20px;bottom:20px;z-index:5;background:var(--primary);color:var(--primary-foreground);box-shadow:0 6px 18px #0004}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-head h2{font-size:1.125rem;margin:0}dialog{background:var(--popover);color:var(--foreground);border:1px solid var(--input);border-radius:9px;padding:20px;max-width:min(900px,calc(100vw - 32px));width:680px;max-height:85dvh;overflow:auto}dialog::backdrop{background:#0009}dialog p{color:var(--secondary-foreground)}dialog textarea{width:100%}dialog img{max-width:100%;height:auto}.conflict-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.conflict-columns pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:.875rem;max-height:300px;overflow:auto}#ai-dialog{position:fixed;inset:auto 20px 75px auto;width:380px}#ai-selection{max-height:130px;overflow:auto;margin:12px 0;padding:12px;border-left:2px solid var(--ring);font-size:.875rem}#ai-messages{max-height:220px;overflow:auto;padding:12px 0}#ai-messages p{margin:12px 0}.login-page{display:grid;place-items:center;min-height:100svh}.login-card{display:block;max-width:440px;padding:28px;margin:24px;background:var(--card);border:1px solid var(--border);border-radius:8px}.login-card h1{font-size:1.25rem;margin-top:16px}.login-card button{width:100%;margin-top:8px}.login-card #message{margin-top:16px;color:var(--risk-foreground)}
.research-page .vditor{border:0;background:var(--background);min-height:180px;flex:1;min-width:0;color:var(--foreground);--textarea-background-color:var(--background);--toolbar-background-color:var(--sidebar);--panel-background-color:var(--popover);--border-color:var(--border);--text-color:var(--foreground);--second-text-color:var(--muted-foreground);--hover-background-color:var(--accent);--ir-bracket-color:var(--muted-foreground);--ir-marker-color:var(--muted-foreground)}.research-page .vditor-toolbar{background:var(--sidebar);border-bottom:1px solid var(--border);padding:4px!important}.research-page .vditor-reset{font-family:var(--font-sans);font-size:16px;line-height:1.8;color:var(--card-foreground);background:var(--background)}.research-page .vditor-reset p{color:inherit;font:inherit;margin:12px 0}.research-page .vditor-ir pre.vditor-reset{padding:16px!important}.research-page .vditor-toolbar button{border:0;background:transparent;min-height:30px;min-width:26px;padding:4px}.research-page .vditor-toolbar svg{height:16px;width:16px}.research-page .vditor-toolbar__item{padding:0 2px}.research-page .vditor-panel,.research-page .vditor-hint{background:var(--popover);color:var(--foreground)}.research-page .vditor-reset h1,.research-page .vditor-reset h2{font-size:1.25rem}.research-page .vditor-reset h3{font-size:1rem}.vditor img{max-width:100%}::highlight(policy-annotations){background:#514738;color:#fff;text-decoration:underline;text-decoration-color:#d8b477}::highlight(policy-active){background:#505050;color:#fff;text-decoration:underline}#annotation-editor{min-height:220px}.source-flash{outline:2px solid var(--ring);outline-offset:2px}
@media(max-width:1199px){.reading-grid{grid-template-columns:minmax(0,55%) minmax(0,45%);margin-right:0}.splitter{display:none}.pane-tabs{display:flex;gap:4px;padding:8px 0}.reading-grid .notes-pane{display:none}.reading-grid[data-pane=notes] .notes-pane{display:flex}.reading-grid[data-pane=notes] .annotations-pane{display:none}.research-main{padding:16px 16px 90px}.research-page .topbar-inner{flex-direction:column;align-items:stretch;gap:0}}
@media(max-width:799px){.reading-grid{display:block;height:max(560px,75dvh)}.reading-grid .reading-pane{display:none;height:100%}.reading-grid[data-pane=original] .original-pane,.reading-grid[data-pane=annotations] .annotations-pane,.reading-grid[data-pane=notes] .notes-pane{display:flex}.research-toolbar{padding:8px;gap:4px}.research-toolbar #save-state{flex-basis:100%;order:8}.policy-meta h1{font-size:1.25rem}.research-main{padding:16px 8px 90px}#original{padding:12px 16px 32px}.conflict-columns{grid-template-columns:1fr}dl{grid-template-columns:80px 1fr}.pane-tabs button,button{min-height:44px}#ai-dialog{right:8px;bottom:76px;max-width:calc(100vw - 16px)}.ai-fab{right:12px;bottom:16px}}
@media(prefers-reduced-motion:reduce){#original{scroll-behavior:auto}}

.research-page .vditor-content,.research-page .vditor-ir,.research-page .vditor-wysiwyg,.research-page .vditor-reset{background:var(--background)!important}.research-page .vditor-toolbar svg{fill:currentColor}.research-page .vditor-toolbar{flex-wrap:wrap}.research-page .vditor-toolbar button{color:var(--secondary-foreground)}

/* 固定文件信息表单 */
.metadata-form{border:1px solid var(--border);border-radius:8px;background:var(--card);overflow:hidden;margin-bottom:12px}.metadata-form fieldset{border:0;padding:0;margin:0;min-width:0}.metadata-grid{display:grid;grid-template-columns:1fr 1fr}.metadata-grid label{margin:0;padding:9px 16px;display:grid;grid-template-columns:88px minmax(0,1fr);align-items:start;gap:12px;border-bottom:1px solid var(--border);font-size:.875rem;color:var(--muted-foreground)}.metadata-grid .metadata-wide{grid-column:1/-1}.metadata-grid input,.metadata-grid textarea{width:100%;padding:5px 8px;border:1px solid transparent;background:var(--card);color:var(--foreground);border-radius:4px;line-height:1.6;font-size:.875rem;min-height:34px;resize:vertical}.metadata-grid input:hover,.metadata-grid textarea:hover{border-color:var(--input)}.metadata-grid input:focus,.metadata-grid textarea:focus{border-color:var(--ring);background:var(--popover)}.metadata-form fieldset:disabled input,.metadata-form fieldset:disabled textarea{opacity:1;color:var(--secondary-foreground);-webkit-text-fill-color:var(--secondary-foreground)}.metadata-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px}.metadata-actions span{font-size:.8125rem;color:var(--muted-foreground)}.policy-links{margin:0 0 20px;font-size:.8125rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:799px){.metadata-grid{grid-template-columns:1fr}.metadata-grid label{padding:8px 12px;grid-template-columns:76px minmax(0,1fr);gap:8px}.metadata-actions{padding:8px 12px;flex-wrap:wrap}}
