:root{--ink:#1d1d1f;--muted:#6e6e73;--accent:#007aff;--accent-hover:#0069dc;--line:#e5e5ea;--bg:#f5f5f7;--tint:#edf5ff;color-scheme:light;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit;color:inherit}
button,a,summary,select{touch-action:manipulation}
button,summary{cursor:pointer}
button{transition:background .18s,border-color .18s,box-shadow .18s,color .18s}
button:disabled{cursor:default;opacity:.35}
button,a,input,select,summary{outline-offset:3px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #007aff80}
button:active:not(:disabled){filter:brightness(.96)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
svg{display:block;flex-shrink:0}
.topbar{height:66px;padding:0 36px;background:#ffffffd9;backdrop-filter:blur(24px);border-bottom:1px solid #dedee380;display:flex;justify-content:space-between;align-items:center}
.brand{display:flex;align-items:center;gap:18px;text-decoration:none;color:inherit}
.logo{font-size:26px;font-weight:750;letter-spacing:-1.2px;position:relative;padding-right:9px}
.logo>span{position:absolute;right:0;top:3px;font-size:10px;letter-spacing:0}
.brand-divider{height:25px;border-left:1px solid #d2d2d7}
.brand-title{font-size:13px;font-weight:600}
.brand-title>span{display:block;color:var(--muted);font-size:10px;font-weight:400;margin-top:1px}
.top-actions{display:flex;gap:14px;align-items:center}
.workspace-badge{display:flex;align-items:center;gap:7px;font-size:11px;background:#f5f5f7;color:var(--muted);border-radius:99px;padding:5px 11px}
.workspace-badge i{height:5px;width:5px;background:#30a46c;border-radius:50%}
.page{max-width:1780px;padding:28px 36px 32px;margin:auto}
.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
h1{font-size:28px;line-height:1.25;letter-spacing:-.7px;font-weight:650;margin:0}
.stats{display:flex;align-items:center;gap:18px}
.stat{display:flex;align-items:baseline;gap:5px;color:var(--muted)}
.stat+.stat{border-left:1px solid #d2d2d7;padding-left:18px}
.stat b{font-size:15px;font-weight:600;color:#515154;font-variant-numeric:tabular-nums}
.stat span{font-size:12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid #dedee3;border-radius:10px;background:#fff;padding:8px 14px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:0 1px 2px #00000003}
.button:hover{background:#f9f9fb;border-color:#c7c7cc}
.button.primary{background:var(--accent);color:white;border-color:var(--accent);box-shadow:0 2px 6px #007aff18}
.button.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.button svg{width:17px;height:17px}
.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:var(--muted);padding:6px 9px;border-radius:8px;font-size:12px;white-space:nowrap;min-height:32px}
.text-button:hover{background:#eeeef2;color:var(--ink)}
.text-button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.icon-button{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dfdfe5;background:#fff;box-shadow:0 1px 2px #00000003;border-radius:8px;padding:0;flex-shrink:0}
.icon-button svg{width:17px;height:17px}
.icon-button:hover{background:#eeeef2;border-color:#c7c7cc}
.search-row{display:flex;gap:10px;align-items:stretch;margin-bottom:22px}
.search-field{display:flex;align-items:center;gap:11px;flex:1;min-width:0;padding:0 15px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 5px #00000002}
.search-field:focus-within{border-color:#90beef;box-shadow:0 0 0 3px #007aff12}
.search-field>svg{width:18px;height:18px;color:var(--muted)}
.search-field input{height:45px;padding:10px 0;width:100%;min-width:0;flex:1;border:0;outline:none;background:transparent;font-size:13px}
.search-field input::placeholder{color:#818187}
.search-key{border:1px solid var(--line);border-radius:5px;background:#fafafa;padding:0 6px;color:var(--muted);font-size:11px}
.search-row>.primary{min-width:110px;padding:0 18px;border-radius:11px}
.search-row>.primary>span{font-size:16px;margin-left:5px}
.mobile-filter{display:inline-flex;background:#eeeef2;border-color:#e5e5ea;color:#515154}
.workspace{display:block}
.category-tabs{display:flex;gap:25px;align-items:center;min-height:40px;padding:0 2px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;margin-bottom:12px;border-bottom:1px solid #dedee5}
.category-tabs::-webkit-scrollbar{display:none}
.category-tab{display:inline-flex;align-items:center;gap:7px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;padding:0 2px 12px;height:40px;color:var(--muted);font-size:13px;flex-shrink:0;font-weight:500}
.category-tab.selected{color:var(--ink);font-weight:600;border-bottom-color:var(--accent)}
.category-tab:hover{color:var(--accent)}
.category-tab>span{font-size:11px;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}
.category-tab.selected>span{color:var(--accent)}
.filters{background:#fff;border:1px solid #e4e4e9;border-radius:16px;padding:0 20px;margin-bottom:25px;box-shadow:0 2px 6px #00000002}
.filters.collapsed{display:none}
.facet-row{display:flex;gap:16px;align-items:center;padding:9px 0;border-bottom:1px solid #eeeef2;min-height:51px}
.facet-label{flex:0 0 82px;font-size:12px;color:#515154;font-weight:550;white-space:nowrap}
.facet-options{flex:1;display:flex;gap:7px;min-width:0;align-items:center;flex-wrap:nowrap;overflow:hidden}
.facet-options.expanded{flex-wrap:wrap;overflow:visible}
.facet-button{border:1px solid transparent;border-radius:8px;background:transparent;min-height:31px;padding:5px 10px;font-size:12px;color:#515154;white-space:nowrap;flex:0 0 auto;font-weight:450}
.facet-button:hover{background:#f3f3f6;color:var(--ink)}
.facet-button.selected{color:#0068d1;border-color:#c0dbf8;background:#edf5ff;font-weight:550}
.facet-button.no-match:not(.selected){color:#909097}
.facet-more{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:31px;border:0;background:transparent;border-radius:8px;color:var(--accent);padding:5px 7px;font-size:12px;white-space:nowrap;flex:0 0 auto;margin-left:auto}
.facet-more:hover{background:var(--tint)}
.facet-more svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.mode-switch{display:inline-flex;align-items:center;gap:1px;padding:2px;border:1px solid #e6e6eb;border-radius:8px;background:#f5f5f7;flex:0 0 auto;margin-right:1px}
.mode-switch button{border:0;background:transparent;font-size:10px;padding:3px 7px;border-radius:6px;color:var(--muted);min-height:23px;white-space:nowrap}
.mode-switch button.selected{background:#fff;box-shadow:0 1px 4px #00000010;color:#515154}
.mode-switch button:hover{color:var(--accent)}
.facet-number{width:86px;height:31px;border:1px solid #dedee5;border-radius:8px;padding:5px 8px;background:#fafafc;font-size:12px;flex:0 0 auto}
.filter-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;min-height:44px}
.filter-bottom-left{display:flex;gap:13px;align-items:center}
.more-filters{color:var(--accent);padding-left:0}
.more-filters:hover{background:transparent;color:var(--accent-hover)}
.filter-divider{height:13px;border-left:1px solid #dedee5}
.checkbox{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;cursor:pointer;white-space:nowrap}
.checkbox input{width:13px;height:13px;accent-color:var(--accent);margin:0;cursor:pointer}
.reset-button{font-size:11px;padding-right:0}
.reset-button:hover{background:transparent;color:var(--accent)}
.results-area{min-width:0}
.result-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;min-height:34px}
.result-toolbar h2{font-size:17px;font-weight:600;letter-spacing:-.3px;margin:0}
.result-toolbar h2>span{display:inline-block;color:var(--muted);font-size:12px;font-weight:400;margin-left:7px;vertical-align:middle}
.result-actions{display:flex;align-items:center;gap:12px}
.result-actions>select{border:0;background:transparent;font-size:12px;color:var(--muted);padding:6px 0;max-width:135px}
.view-switch{display:flex;gap:2px;padding:3px;background:#e9e9ee;border-radius:9px;align-items:center}
.view-switch button{display:flex;align-items:center;justify-content:center;border:0;width:32px;height:28px;border-radius:7px;color:var(--muted);background:transparent}
.view-switch button svg{width:15px;height:15px}
.view-switch button.active{background:white;color:#1d1d1f;box-shadow:0 1px 4px #00000017}
.view-switch button:hover:not(.active){background:#dcdce3;color:#515154}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.chips:empty{display:none}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:29px;border:1px solid #d3e5fa;background:#edf5ff;color:#0068d1;border-radius:8px;padding:4px 10px;font-size:11px}
.chip:hover{background:#e2efff;border-color:#98c1ef}
.chip>span{font-size:14px;line-height:1}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.drawing-card{display:block;text-align:left;padding:0;border:1px solid #dedee5;background:white;border-radius:18px;overflow:hidden;min-width:0;width:100%;box-shadow:0 2px 5px #00000002}
.drawing-card:hover{border-color:#b8cee6;box-shadow:0 6px 22px #15223a0a}
.thumbnail{aspect-ratio:1.43;position:relative;padding:17px 15px 15px;display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid #ececf0;overflow:hidden}
.thumbnail img{width:100%;height:100%;object-fit:contain;background:#fff;mix-blend-mode:normal}
.file-label{position:absolute;left:12px;top:11px;color:var(--muted);background:#ffffffeb;border:1px solid #e5e5ea;border-radius:5px;font-size:9px;padding:1px 6px;letter-spacing:.3px}
.preview-action{position:absolute;right:12px;bottom:12px;display:flex;gap:6px;align-items:center;color:#fff;background:var(--accent);border-radius:9px;padding:7px 11px;font-size:11px;opacity:0;transition:opacity .18s;box-shadow:0 2px 6px #007aff1a}
.preview-action svg{width:13px;height:13px}
.drawing-card:hover .preview-action,.drawing-card:focus-visible .preview-action{opacity:1}
.card-body{padding:13px 17px 15px}
.card-subline{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-bottom:5px}
.card-series{letter-spacing:.1px}
.card-pages{flex-shrink:0;font-variant-numeric:tabular-nums}
.card-name{font-size:14px;font-weight:600;letter-spacing:-.15px;line-height:1.45;margin:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}





.missing{color:#818187;font-weight:400!important}
.list-box{max-width:100%;border:1px solid var(--line);border-radius:14px;overflow:auto;background:white}
table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}
th{padding:13px 16px;background:#f9f9fb;color:var(--muted);font-size:11px;font-weight:500;white-space:nowrap}
td{padding:12px 16px;border-top:1px solid #eeeef2;vertical-align:middle}
td .row-button{background:transparent;border:0;color:var(--accent);text-align:left;font-size:12px;font-weight:550;padding:0;overflow-wrap:anywhere;max-width:320px}
.row-series{display:block;color:var(--muted);font-size:10px;margin-top:4px}
.table-thumb{width:85px;height:60px;object-fit:contain}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;font-size:11px;color:var(--muted)}
.pagination>div{display:flex;gap:8px}
.pagination .button{font-size:11px;min-height:34px;padding:6px 13px}
.library-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #e0e0e6;padding-top:18px;margin-top:27px;font-size:10px;color:var(--muted)}
.empty-state{text-align:center;background:white;border:1px dashed #d9d9e0;border-radius:16px;padding:55px 20px}
.empty-state svg{height:53px;width:53px;color:#818187;margin:0 auto 17px}
.empty-state h3{font-size:17px;font-weight:550;margin:0}
.empty-state p{font-size:13px;color:var(--muted);margin:9px 0 20px}
.load-error{border:1px solid #e2b8a9;background:#fff6f2;border-radius:12px;padding:25px;color:#9b4d35;font-size:13px}
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#323234ef;backdrop-filter:blur(16px);border-radius:12px;box-shadow:0 6px 30px #00000020;color:white;padding:12px 20px;font-size:13px;z-index:1000}
dialog{color:var(--ink);border:1px solid #d2d2d7;box-shadow:0 28px 110px #00000030;background:white}
dialog::backdrop{background:#262a335c;backdrop-filter:blur(12px)}
.detail-dialog{padding:0;width:min(1720px,95vw);max-width:95vw;height:94dvh;max-height:94dvh;overflow:hidden;border-radius:20px;border:1px solid #ffffffb0}
.detail-screen,.detail-content{width:100%;height:100%;position:relative;overflow:hidden;background:#e9eaef}
.detail-screen:fullscreen{width:100vw;height:100dvh}
.detail-screen:-webkit-full-screen{width:100vw;height:100dvh}
.detail-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px;padding:14px 22px;border-bottom:1px solid #e6e6eb;background:#fdfdfef2}
.detail-identity{display:flex;align-items:center;gap:12px;min-width:0}
.document-icon{width:35px;height:41px;display:flex;align-items:center;justify-content:center;background:#edf5ff;color:var(--accent);border-radius:9px;flex-shrink:0}
.document-icon svg{width:24px;height:24px}
.detail-identity>div{min-width:0}
.detail-heading h2{font-size:16px;line-height:1.4;font-weight:600;letter-spacing:-.25px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.detail-heading p{display:flex;gap:7px;align-items:center;color:var(--muted);font-size:11px;margin:4px 0 0}
.metadata-dot{color:#a0a0a6}
.detail-actions{display:flex;align-items:center;gap:15px;flex-shrink:0}
.download-button{text-decoration:none;min-height:32px;padding:6px 11px;font-size:11px;cursor:pointer}
.download-button svg{width:15px;height:15px}


.close-button{border:0;border-radius:50%;background:#eaeaef;width:29px;height:29px;box-shadow:none}
.close-button:hover{background:#dddde5}
.close-button svg{width:16px;height:16px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr);height:calc(100% - 76px);min-height:0}

.viewer-section{display:flex;flex-direction:column;min-width:0;min-height:0;background:#e9eaef}
.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:53px;padding:9px 19px;background:#f9f9fbe8;border-bottom:1px solid #dedee6}
.viewer-group{display:flex;align-items:center;gap:5px;min-width:0}
.viewer-toolbar .icon-button{height:30px;width:30px;border:0;box-shadow:none;background:transparent;color:#515154}
.viewer-toolbar .icon-button:hover:not(:disabled){background:#e6e6ee}
.viewer-toolbar .text-button{font-size:11px;min-height:29px;padding:5px 10px;color:#515154}
.viewer-toolbar .text-button.selected{background:white;box-shadow:0 1px 4px #00000012;color:#1d1d1f}
.viewer-toolbar #pdfPage{font-size:11px;min-width:44px;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}
.zoom-controls{display:flex;align-items:center;gap:3px}
#zoomValue{min-width:49px;text-align:center;font-size:11px;font-variant-numeric:tabular-nums;color:#515154}
.toolbar-divider{height:17px;border-left:1px solid #d2d2d7;margin:0 9px}
.fit-controls{display:flex;background:#eeeeF3;border-radius:8px;padding:2px;gap:1px}
.pdf-stage{flex:1;position:relative;overflow:auto;min-height:0;scrollbar-width:thin;background:#e9eaef;overscroll-behavior:contain}
.pdf-stage #pdfSheet{width:max-content;height:max-content;min-width:100%;min-height:100%;padding:24px;display:flex;align-items:center;justify-content:center}
.pdf-stage canvas{background:#fff;display:block;box-shadow:0 3px 6px #1f24310a,0 12px 35px #1f24310b;flex-shrink:0}
.pdf-message{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--muted);font-size:13px}
.viewer-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#f9f9fbe8;border-top:1px solid #dedee6;padding:4px 19px;font-size:10px;color:var(--muted);min-height:37px}
.viewer-caption>span{display:flex;align-items:center;gap:6px}
.viewer-caption i{width:5px;height:5px;border-radius:50%;background:#30a46c}
.viewer-caption .text-button{color:var(--muted);font-size:10px;min-height:26px;padding:4px 7px}
.viewer-caption .text-button svg{width:13px;height:13px}
.detail-dialog:fullscreen{width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;border:0}
.detail-dialog.full-view{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;border:0}
.help-dialog,.login-dialog{padding:30px;border-radius:20px;border-color:var(--line);max-width:min(580px,92vw)}
.help-dialog h2,.login-dialog h2{font-size:21px;font-weight:600;letter-spacing:-.4px;margin:0 0 17px}
.help-dialog ol{font-size:13px;line-height:1.9;color:var(--muted);padding-left:20px}
.help-dialog li{margin:12px 0;padding-left:4px}
.help-dialog .button{margin-top:10px}
.login-dialog{width:min(410px,92vw);padding:35px}
.login-dialog h2{margin:21px 0 7px;font-size:20px}
.login-dialog>p{font-size:13px;color:var(--muted);margin:0 0 25px}
.login-dialog .button{width:100%}
.control{font-size:13px;display:block;margin-bottom:18px;color:#515154}
.control input{display:block;height:42px;border:1px solid #dedee5;background:#fafafc;border-radius:10px;font-size:14px;padding:8px 10px;margin-top:7px;width:100%}
.login-dialog #loginError{font-size:13px;color:#a14432;min-height:18px}
@media(max-width:1100px){.page{padding:26px}.topbar{padding:0 26px}.cards{gap:18px}.card-body{padding:12px 14px}.card-name{font-size:13px}.facet-label{flex-basis:76px}.viewer-toolbar{padding:9px 12px;gap:6px}.toolbar-divider{margin:0 5px}.viewer-toolbar .text-button{padding:5px 7px}}
@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-name{font-size:14px}.category-tabs{gap:22px}.facet-row{gap:12px}.facet-button{font-size:11px;padding:5px 9px}.viewer-toolbar{flex-wrap:wrap}.viewer-sizing{order:3;justify-content:center;flex-basis:100%;padding-top:5px;border-top:1px solid #e5e5ea}.viewer-tools{margin-left:auto}}
@media(max-width:760px){
 .topbar{height:62px;padding:0 16px}.brand{gap:12px}.logo{font-size:23px}.brand-divider{height:23px}.brand-title{font-size:11px}.brand-title>span{font-size:9px}.top-actions{gap:6px}.workspace-badge{font-size:9px;padding:4px 7px;gap:5px}.top-actions>.text-button{font-size:10px;padding:5px 3px}
 .page{padding:22px 16px}.intro{margin-bottom:18px;gap:12px}h1{font-size:24px}.stats{gap:10px}.stat{gap:3px}.stat b{font-size:12px}.stat span{font-size:10px}.stat+.stat{padding-left:10px}
 .search-row{gap:8px;flex-wrap:wrap;margin-bottom:17px}.search-field{flex-basis:100%;padding:0 12px;gap:9px}.search-field input{height:44px;font-size:12px}.search-field svg{width:17px;height:17px}.search-key{display:none}.search-row>.primary{flex:1;min-height:35px;font-size:12px}.mobile-filter{font-size:11px;min-height:35px}
 .category-tabs{gap:20px;margin-bottom:11px;min-height:38px}.category-tab{height:38px;font-size:12px;padding-bottom:11px}.category-tab>span{font-size:10px}.filters{padding:0 13px;margin-bottom:22px;border-radius:14px}.facet-row{display:block;padding:10px 0;min-height:0}.facet-label{font-size:11px;line-height:1.4;margin-bottom:7px;color:var(--muted)}.facet-options{gap:5px}.facet-button{min-height:30px;padding:5px 8px;font-size:11px}.facet-more{min-height:30px;padding:5px 3px;font-size:11px;gap:2px}.facet-more svg{width:12px;height:12px}.mode-switch{padding:1px;gap:0;margin-right:0}.mode-switch button{font-size:10px;min-height:24px;padding:3px 6px}.facet-number{height:30px;font-size:11px;width:77px;padding:5px 6px}.filter-bottom{padding:7px 0;gap:5px}.filter-bottom-left{gap:7px}.more-filters{font-size:10px;min-height:27px;padding-right:0;gap:2px}.checkbox{font-size:10px;gap:4px}.checkbox input{width:12px;height:12px}.reset-button{font-size:10px;gap:3px;min-height:27px;padding-left:0}.reset-button svg{width:12px;height:12px}
 .result-toolbar{margin-bottom:15px;min-height:32px}.result-toolbar h2{font-size:15px}.result-toolbar h2>span{font-size:11px;margin-left:5px}.result-actions{gap:8px}.result-actions>select{max-width:96px;font-size:11px;padding:5px 0}.view-switch{padding:2px}.view-switch button{width:27px;height:27px}.view-switch svg{width:14px;height:14px}.chips{gap:6px;margin-bottom:12px}.chip{font-size:10px;min-height:28px;padding:4px 8px;gap:6px}
 .cards{grid-template-columns:1fr;gap:18px}.drawing-card{border-radius:16px}.thumbnail{padding:17px 13px 13px;aspect-ratio:1.43}.card-body{padding:13px 15px 14px}.card-name{font-size:14px}.card-subline{font-size:11px}.file-label{font-size:9px;top:10px;left:10px}.preview-action{opacity:1;font-size:10px;padding:6px 9px;right:10px;bottom:10px}
 .pagination{font-size:10px;margin-top:22px;gap:7px}.pagination .button{font-size:10px;padding:6px 10px;min-height:32px}.library-foot{font-size:9px;padding-top:16px;margin-top:23px;flex-wrap:wrap}.table-thumb{width:65px;height:47px}th,td{padding:10px;font-size:11px}
 .detail-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:94dvh;max-height:94dvh;border-radius:16px}.detail-heading{height:77px;padding:13px 12px;gap:9px}.document-icon{display:none}.detail-heading h2{font-size:13px}.detail-heading p{font-size:10px;gap:5px}.detail-actions{gap:8px}.close-button{width:28px;height:28px}.detail-layout{height:calc(100% - 77px)}
 .viewer-toolbar{padding:7px 10px;min-height:83px;gap:5px}.viewer-toolbar .icon-button{width:28px;height:28px}.viewer-toolbar .text-button{font-size:10px;padding:5px 8px}.viewer-toolbar #pdfPage{font-size:10px;min-width:36px}.viewer-group{gap:3px}.viewer-sizing{padding-top:5px;justify-content:center}.toolbar-divider{margin:0 6px;height:15px}#zoomValue{font-size:10px;min-width:42px}.viewer-caption{padding:4px 11px;font-size:9px;min-height:33px}.viewer-caption .text-button{font-size:9px}.help-dialog{padding:23px}.help-dialog h2{font-size:19px}.help-dialog ol{font-size:12px}.login-dialog{padding:28px}
}
.detail-dialog.full-view{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;border:0}
.detail-dialog.landscape-rotated .detail-content{position:absolute;left:50%;top:50%;width:var(--viewer-screen-height);height:var(--viewer-screen-width);transform:translate(-50%,-50%) rotate(90deg)}
.mobile-landscape .detail-content{--viewer-safe-left:env(safe-area-inset-left);--viewer-safe-right:env(safe-area-inset-right);--viewer-safe-top:env(safe-area-inset-top);--viewer-safe-bottom:env(safe-area-inset-bottom)}
.mobile-landscape.landscape-rotated .detail-content{--viewer-safe-left:env(safe-area-inset-top);--viewer-safe-right:env(safe-area-inset-bottom);--viewer-safe-top:env(safe-area-inset-right);--viewer-safe-bottom:env(safe-area-inset-left)}
.mobile-landscape .detail-heading{position:absolute;z-index:3;top:max(8px,var(--viewer-safe-top));right:calc(8px + var(--viewer-safe-right));height:auto;padding:0;border:0;background:transparent}
.mobile-landscape .detail-identity,.mobile-landscape .viewer-caption,.mobile-landscape .toolbar-divider{display:none}
.mobile-landscape .detail-actions{flex-direction:column;gap:8px}
.mobile-landscape .close-button{order:-1;width:44px;height:44px;border-radius:12px}
.mobile-landscape .download-button{width:44px;height:44px;min-height:44px;padding:0;font-size:0;color:var(--accent)}
.mobile-landscape .download-button svg{width:19px;height:19px}
.mobile-landscape .detail-layout{height:100%}
.mobile-landscape .viewer-toolbar{position:absolute;z-index:3;top:max(8px,var(--viewer-safe-top));bottom:max(8px,var(--viewer-safe-bottom));left:calc(8px + var(--viewer-safe-left));width:128px;min-height:0;padding:0;flex-direction:column;flex-wrap:nowrap;gap:8px;background:transparent;border:0}
.mobile-landscape .viewer-sizing{order:0;flex-basis:auto;padding:0;border:0;gap:8px;flex-direction:column}
.mobile-landscape .viewer-tools{margin-left:0}
.mobile-landscape .viewer-toolbar .icon-button{width:44px;height:44px}
.mobile-landscape .viewer-toolbar .text-button{min-height:44px;padding:5px 8px;font-size:11px}
.mobile-landscape .viewer-toolbar #pdfPage{min-width:32px}
.mobile-landscape .viewer-group,.mobile-landscape .zoom-controls{gap:0}
.mobile-landscape #zoomValue{min-width:40px}
.mobile-landscape .fit-controls{flex-direction:column;width:128px;padding:2px;border-radius:12px}
.mobile-landscape .page-navigation,.mobile-landscape .zoom-controls,.mobile-landscape .viewer-tools,.mobile-landscape .fit-controls,.mobile-landscape .close-button,.mobile-landscape .download-button{background:#ffffffed;border:1px solid #dcdce3;box-shadow:0 2px 12px #2025350b;backdrop-filter:blur(16px);border-radius:12px}
.mobile-landscape .pdf-stage{padding:max(8px,var(--viewer-safe-top)) calc(56px + var(--viewer-safe-right)) max(8px,var(--viewer-safe-bottom)) calc(144px + var(--viewer-safe-left))}
.mobile-landscape .pdf-stage #pdfSheet{padding:0}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
