.pdf-intro{display:flex;align-items:center;justify-content:space-between;gap:24px}.pdf-intro h2{margin:0 0 10px;font-size:26px}.pdf-intro p{color:var(--muted);line-height:1.7;margin:0;max-width:620px}.file-button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;background:var(--green);color:#fff;border-radius:7px;font-size:14px;font-weight:700;cursor:pointer;overflow:hidden;white-space:nowrap}.file-button input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;width:100%;height:100%}.file-button:focus-within{outline:3px solid #54791c;outline-offset:4px}.pdf-empty{text-align:center;border:1px dashed #b8c8b2;border-radius:12px;padding:60px 24px;margin:24px 0;background:#f8f9f3}.pdf-empty>span{display:inline-flex;align-items:center;justify-content:center;width:58px;height:68px;border:1px solid var(--line);background:white;color:var(--green);font-weight:800;border-radius:6px}.pdf-empty h3{font-size:20px;margin:20px 0 12px}.pdf-empty p{font-size:14px;color:var(--muted);line-height:1.7}.pdf-toolbar{border:1px solid var(--line);border-radius:10px;padding:22px;margin:24px 0 0;background:#fff}.pdf-filename{font-size:14px;font-weight:700;margin:0 0 20px;overflow-wrap:anywhere}.pdf-fields{display:grid;grid-template-columns:minmax(160px,1fr) minmax(200px,2fr) 100px;gap:15px}.pdf-fields select,.pdf-position input{width:100%;min-height:44px;margin-top:7px;border:1px solid #d4ddd2;border-radius:5px;padding:10px;color:var(--ink);background:white;font:inherit;font-size:14px}.pdf-fields input{min-height:44px;font-size:14px}.pdf-position{border:0;padding:0;margin:14px 0 22px;display:flex;align-items:end;gap:12px;flex-wrap:wrap}.pdf-position legend{font-size:12px;font-weight:600;margin-bottom:8px;color:var(--muted)}.pdf-position label{max-width:135px}.pdf-position input{padding:8px;font-size:14px}.pdf-position button,.pdf-actions button:not(.button),.pdf-navigation button{border:1px solid var(--line);border-radius:6px;background:#f8f9f3;color:var(--ink);padding:11px 16px;min-height:44px;font-size:13px;cursor:pointer}.pdf-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pdf-actions .button{margin-left:auto}.pdf-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.pdf-navigation span{font-size:13px;text-align:center}.pdf-scroll{overflow:auto;background:#e9ede7;padding:24px 12px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;min-height:120px;max-height:900px}.pdf-stage{position:relative;margin:0 auto;box-shadow:0 3px 18px #173e3818;background:white;max-width:100%}.pdf-stage canvas{display:block;width:100%;height:100%}#pdf-overlay{position:absolute;inset:0;touch-action:none;cursor:crosshair}.pdf-limits{margin-top:18px}.pdf-toolbar button:disabled{opacity:.5;cursor:default}.pdf-position:disabled{opacity:.6}@media(max-width:700px){.pdf-intro{align-items:stretch;flex-direction:column;gap:18px}.pdf-intro h2{font-size:23px}.pdf-fields{grid-template-columns:1fr 100px}.pdf-fields>label:first-child{grid-column:1/-1}.pdf-fields select,.pdf-fields input,.pdf-position input{font-size:16px}.pdf-toolbar{padding:16px}.pdf-actions{align-items:stretch}.pdf-actions button{flex:1 1 150px;justify-content:center}.pdf-actions .button{width:100%;margin-left:0}.pdf-empty{padding:36px 18px}.pdf-position label{max-width:calc(50% - 6px);flex:1}.pdf-position button{width:100%}.pdf-scroll{padding:12px;max-height:650px}.pdf-navigation{gap:6px}.pdf-navigation button{padding:9px;font-size:12px}.pdf-navigation span{font-size:12px}}

/* Navigation and placement keep the document size independent from the screen. */
.pdf-stage{max-width:none}
.pdf-scroll{overscroll-behavior:contain;scroll-behavior:auto;min-width:0}
.pdf-scroll:focus-visible{outline:3px solid #54791c;outline-offset:3px}
#pdf-overlay[data-mode=pan]{cursor:grab}
#pdf-overlay[data-mode=pan].is-dragging{cursor:grabbing}
#pdf-overlay[data-mode=move]{cursor:move}
.pdf-zoom{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:20px}
.pdf-zoom button,.pdf-move-buttons button{border:1px solid var(--line);border-radius:6px;background:#f8f9f3;color:var(--ink);padding:10px 15px;min-width:44px;min-height:44px;font:inherit;font-size:14px;cursor:pointer}
.pdf-zoom output{min-width:54px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
.pdf-zoom button:last-child{margin-left:6px}
.pdf-move-controls{margin:16px 0 22px;padding:16px;border:1px solid #cad8c5;background:#f8f9f3;border-radius:8px}
.pdf-move-controls label{display:block;max-width:520px}
.pdf-move-controls select{display:block;width:100%;min-width:0;min-height:44px;margin-top:7px;padding:10px;border:1px solid #d4ddd2;border-radius:5px;background:white;color:var(--ink);font:inherit;font-size:14px;text-overflow:ellipsis}
.pdf-move-buttons{display:flex;gap:10px;flex-wrap:wrap}
.pdf-move-buttons button{background:#fff;font-size:20px;min-width:52px}
.pdf-move-controls .tool-help:last-child{margin-bottom:0}
@media(max-width:700px){.pdf-zoom{gap:6px}.pdf-zoom button:last-child{flex:1;margin-left:0}.pdf-move-controls{padding:12px}.pdf-move-controls select{font-size:16px}.pdf-move-buttons{gap:8px}.pdf-move-buttons button{flex:1}.pdf-scroll{max-height:65vh;min-height:200px}.pdf-fields>label:first-child:last-child{grid-column:1/-1}}
