@font-face{font-family:Inter;src:url("./fonts/InterVariable.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
*{box-sizing:border-box} :root{font-family:Inter,Arial,sans-serif;color:#263139;font-synthesis:none}body{margin:0;padding:20px;background:#eceef0}button,input,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.3;cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #a66b45;outline-offset:3px}svg{width:18px;height:18px;fill:currentColor;stroke:none;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}
.reader{height:calc(100dvh - 40px);min-height:360px;position:relative;overflow:hidden;border-radius:12px;--toolbar-background:#182024ed;--toolbar-height:48px;--viewer-background:#30383c;--search-highlight:#ffd144;background:var(--viewer-background);color:#d0d5d5;isolation:isolate;container-type:inline-size}.reader-surface{height:100%;display:flex;flex-direction:column;position:relative;min-width:0}.reader-top{position:absolute;top:12px;left:12px;right:12px;height:var(--toolbar-height);pointer-events:auto;display:flex;align-items:center;padding:6px 12px;gap:16px;flex-shrink:0;z-index:7;background:var(--toolbar-background);border-radius:9px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.reader-tools{display:flex;align-items:center;gap:5px;flex-shrink:0;padding:0;pointer-events:auto;background:none}#title{font:400 16px/1.4 Inter,Arial,sans-serif;min-width:0;flex:1;margin:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#e5e8e7;text-shadow:0 1px 5px #0008;padding-left:0}.stage-btn,.icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:transparent;color:inherit;flex-shrink:0}.stage-btn:hover{background:#ffffff12;color:white}.icon-btn:hover{background:#e6e9eb}.stage-btn svg{width:18px;height:18px}
.viewport{flex:1;min-height:0;position:relative;overflow:hidden;touch-action:none;overscroll-behavior:contain;scrollbar-width:none;overflow-anchor:none}.viewport.zoomed{overflow:auto}.viewport::-webkit-scrollbar{display:none}.book-wrap{min-width:100%;min-height:100%;display:flex;align-items:center;justify-content:center;padding:65px}.book{position:relative;display:flex;flex-shrink:0;isolation:isolate;touch-action:none;user-select:none;--pw:350px;--ph:460px;width:calc(var(--pw) * 2);height:var(--ph);transform-origin:center;overflow:visible;opacity:0;visibility:hidden;transition:opacity .28s ease}.book.is-ready{opacity:1;visibility:visible}.book.cover{transform:translateX(calc(var(--pw) * -.5))}.paper{width:var(--pw);height:var(--ph);flex-shrink:0;position:relative;background:#fffffa;overflow:hidden}.paper.empty{visibility:hidden;box-shadow:none}.paper canvas{width:100%;height:100%;display:block;object-fit:contain}.force-aspect-ratio .paper canvas{object-fit:fill}.book::after{content:"";position:absolute;top:0;bottom:0;left:46%;width:8%;background:linear-gradient(90deg,transparent,#00000016 42%,#00000025 50%,#0000000b 62%,transparent);pointer-events:none;z-index:3;opacity:1;transition:opacity .35s ease}.book.cover::after{opacity:0}.flip-layer{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:visible}.flip-layer canvas{position:absolute;left:-50%;top:-50%;width:200%;height:200%;pointer-events:none}.viewport.zoomed .book{cursor:grab}.viewport.zoomed .book:active{cursor:grabbing}
.reader-bottom{position:absolute;bottom:16px;left:12px;right:12px;z-index:7;display:flex;align-items:center;justify-content:center;pointer-events:none}.control-bar{display:flex;width:100%;height:var(--toolbar-height);max-width:100%;justify-content:space-between;align-items:center;gap:5px;border:0;background:var(--toolbar-background);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);pointer-events:auto;box-shadow:0 8px 30px #0002;padding:6px 12px;border-radius:9px;z-index:3}.page-control{display:flex;align-items:center;gap:7px;font-size:13px;white-space:nowrap;padding:0 6px}.page-control input{width:38px;color:#e6e9e7;border:0;background:#ffffff08;border-radius:3px;appearance:textfield;text-align:center;padding:5px 0;font-size:14px}.page-control input::-webkit-inner-spin-button{appearance:none}.page-control>span{color:#9aa6a3}.control-divider{height:19px;width:1px;background:#ffffff14;margin:0 9px}.zoom-label{font-size:13px;width:45px;padding:0;color:#d4d9d7;background:none}
.loading{position:absolute;inset:0;z-index:6;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:12px;color:#dce1dd;background:var(--viewer-background);animation:loading-in .2s ease;font-size:14px}.spinner{width:20px;height:20px;border:2px solid #ffffff30;border-top-color:#dca985;border-radius:50%;animation:spin 1s linear infinite}@keyframes loading-in{from{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.error-card{position:absolute;inset:15% 10%;background:#f8f9fa;border-radius:12px;color:#39434a;padding:30px;z-index:15;max-height:300px}.error-card h2{font-size:20px}.error-card p{font-size:14px;line-height:1.6}.primary-btn,.upload-btn{background:#303a3e;color:#fff;border-radius:6px;padding:11px 16px;font-size:14px}.primary-btn:hover,.upload-btn:hover{background:#465359}.hit{position:absolute;background:color-mix(in srgb,var(--search-highlight) 30%,transparent);outline:1px solid color-mix(in srgb,var(--search-highlight) 65%,transparent);mix-blend-mode:normal;pointer-events:none;z-index:1}.hit.selected{background:color-mix(in srgb,var(--search-highlight) 42%,transparent);outline:2px solid var(--search-highlight);box-shadow:0 0 0 3px var(--highlight-halo,#ffffffcc)}
.viewer-modal{color:#354149;background:#f8f9fa}.explorer-modal{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;outline:none}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;padding:20px 26px;border-bottom:1px solid #e1e5e8}.modal-header h2{font-size:18px;font-weight:500;margin:0;line-height:1.4}.explorer-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:26px;scrollbar-width:thin}.thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-content:start;gap:26px 24px}.thumbnail{padding:0;background:none;min-width:0;max-width:240px;color:#5b6972;text-align:left}.thumb-paper{height:205px;background:#e7eaed;border:1px solid #d8dee2;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px #17232b10;overflow:hidden;border-radius:2px}.thumbnail canvas{max-width:100%;max-height:100%;object-fit:contain}.thumbnail-meta{display:flex;align-items:flex-start;flex-direction:column;gap:6px;margin-top:12px;font-size:13px;min-height:20px}.match-count{font-size:12px;color:#92704e;background:#f1e6d9;padding:3px 6px;border-radius:4px;white-space:nowrap}.thumbnail.active .thumb-paper{outline:2px solid #ac805d;outline-offset:4px}.thumbnail:hover .thumb-paper{box-shadow:0 4px 15px #17232b30}.thumbnail.active .thumbnail-label{color:#8c6345}.reader.search-open .reader-top{visibility:hidden}
.search-toolbar{position:absolute;top:12px;left:12px;right:12px;height:var(--toolbar-height);z-index:8;background:var(--toolbar-background);border:0;border-radius:9px;padding:6px 12px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
#search-form{display:flex;height:100%;align-items:center;gap:5px}.search-field{display:flex;align-items:center;gap:10px;min-width:0;flex:1;background:none;border:0;border-radius:6px;padding:6px 0}.search-field svg{width:18px;height:18px}.search-field input{min-width:0;width:100%;background:none;border:0;color:#fff;outline:none;font-size:16px}.search-field input::placeholder{color:#aeb8bc}.search-status{margin:0 6px;font-size:12px;color:#d0d5d5;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.check-label{display:flex;align-items:center;gap:4px;white-space:nowrap;font-size:12px;color:#aeb8bc;padding:0 6px;cursor:pointer}.check-label input{accent-color:#b68866}.control-group,.primary-controls{display:flex;align-items:center;gap:4px}.primary-controls{gap:0}
.modal-backdrop{position:absolute;inset:0;z-index:30;background:#142128b3;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.compact-modal{width:100%;max-width:480px;border:0;border-radius:12px;box-shadow:0 20px 65px #0004;max-height:100%;overflow:auto;outline:none}.compact-modal .modal-header{padding:19px 22px}.compact-modal h2{font-size:17px}.modal-content{padding:22px}.modal-content p{font-size:14px;line-height:1.6;margin:0 0 18px;color:#6c7a83}.modal-content .info-title{color:#33424b;font-size:16px;overflow-wrap:anywhere}.document-info{margin:0}.document-info>div{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid #e2e7ea;font-size:14px}.document-info dt{color:#78858d}.document-info dd{margin:0;font-variant-numeric:tabular-nums}.modal-content textarea{width:100%;height:120px;background:#edf0f2;border:1px solid #d5dde2;border-radius:6px;padding:12px;font-family:monospace;font-size:13px;resize:vertical;margin:0 0 16px}.toast{position:absolute;bottom:90px;left:50%;transform:translateX(-50%);z-index:40;background:#f8fafb;color:#34414a;box-shadow:0 5px 24px #0004;border-radius:8px;padding:14px 22px;font-size:14px;max-width:90%;width:max-content}.drag-over .reader::after{content:'Rilascia il PDF per aprirlo';position:absolute;inset:8px;border:2px dashed #d89970;border-radius:8px;background:#202a2ef2;display:grid;place-items:center;font-size:22px;color:#edc7aa;z-index:50;pointer-events:none}.reader:fullscreen{height:100dvh;width:100%;border-radius:0}.embed-mode{padding:0}.embed-mode .reader{height:100dvh}
@media(max-width:760px){.reader-top{gap:10px}.reader-tools{gap:0}.stage-btn{width:32px;height:34px}.stage-btn svg{width:18px;height:18px}#title{font-size:14px}.book-wrap{padding:65px 30px}.modal-header{padding:16px 18px}.explorer-scroll{padding:20px 18px}.thumbnails{grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:22px 16px}.thumb-paper{height:175px}.modal-backdrop{padding:16px}.control-bar{padding:6px;gap:2px}.control-divider{margin:0 5px}}
@media(max-width:480px){.reader-top{gap:8px}.thumb-paper{height:155px}.thumbnails{grid-template-columns:repeat(2,minmax(0,1fr))}.thumbnail-meta{font-size:12px;flex-wrap:wrap}.compact-modal .modal-header{padding:14px}.modal-content{padding:16px}.reader-bottom{bottom:12px}.page-control{padding:0 3px;gap:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.thumbnail-label{white-space:nowrap}

 .secondary-divider{display:none}
@container(max-width:700px){
 .zoom-controls,.zoom-divider{display:none}.control-bar{flex-wrap:nowrap;justify-content:space-between;gap:0;padding:6px}.primary-controls{width:auto}.control-group{gap:0}.page-control{padding:0;gap:3px}.page-control input{width:30px;font-size:13px}.reader-bottom{left:10px;right:10px}.reader-top,.search-toolbar{top:10px;left:10px;right:10px;padding:6px}.search-status{font-size:11px;max-width:76px;margin:0 2px}.search-field{padding:6px 0;gap:6px}.search-field svg{display:none}.check-label{padding:0 2px}#search-form{gap:2px}
}
@container(max-width:360px){.stage-btn{width:28px}.page-control input{width:26px}.page-control{font-size:12px}.search-status{max-width:66px}}

@container(max-width:500px){.check-label{gap:3px;font-size:11px;flex-shrink:0}.check-label span{max-width:40px;white-space:normal;line-height:1.15}.check-label input{margin:0}}
.page-control .page-current{display:none}
@media(max-width:760px){.page-control input,.check-label{display:none}.page-control .page-current{display:inline-block;color:#e6e9e7;text-align:center;min-width:20px}}
.viewport:not(.zoomed) .paper.turnable::before{content:"";position:absolute;top:0;bottom:0;width:45%;z-index:2;cursor:grab}.viewport:not(.zoomed) .paper.turnable:active::before{cursor:grabbing}.viewport:not(.zoomed) .left-paper.turnable::before{left:0}.viewport:not(.zoomed) .right-paper.turnable::before{right:0}
.book.back-cover{transform:translateX(calc(var(--pw) * .5))}.book::after,.book.cover::after{opacity:var(--gutter-opacity,1);transition:none}

body[data-managed] #embed, body[data-managed] #open-file { display: none; }