.vd-document-card { display:flex; align-items:center; gap:16px; padding:22px; margin:22px 0; background:#fff; border:1px solid #dce9e1; border-radius:18px; box-shadow:0 8px 28px #142b2010; }
.vd-heading-icon { display:grid; place-items:center; flex:0 0 46px; width:46px; height:46px; border-radius:14px; background:#e9f7ee; color:#16804e; font-size:21px; }
.vd-document-copy { flex:1; min-width:0; }
.vd-document-card .vd-document-copy h3 { margin:0 0 5px; font-size:17px; color:#162b22; }
.vd-document-card .vd-document-copy p { margin:0; color:#64756c; font-size:12px; line-height:1.6; }
.vd-view-button { display:inline-flex; justify-content:center; align-items:center; gap:9px; border:1px solid #16804e; border-radius:10px; padding:11px 16px; background:#16804e; color:#fff; font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.vd-view-button:hover,.vd-view-button:focus { background:#11623c; color:#fff; }
.vd-view-button:disabled { opacity:.55; cursor:default; }
.vd-view-button small { display:inline-grid; place-items:center; min-width:20px; height:20px; border-radius:6px; background:#ffffff26; color:#fff; font:inherit; }
.vd-dialog { box-sizing:border-box; width:min(1100px,96vw); height:min(960px,94vh); height:min(960px,94dvh); max-width:96vw; max-height:96vh; max-height:96dvh; padding:0; border:1px solid #ffffff4d; border-radius:22px; margin:auto; background:#f5f8f6; color:#192f24; box-shadow:0 30px 100px #031e1866; overflow:hidden; font-family:inherit; }
.vd-dialog:not([open]) { display:none; }
.vd-dialog::backdrop { background:#071b16b8; backdrop-filter:blur(5px); }
html:has(.vd-dialog[open]) { overflow:hidden; }
.vd-dialog * { box-sizing:border-box; }
.vd-dialog [hidden] { display:none !important; }
.vd-dialog-shell { display:flex; flex-direction:column; height:100%; min-height:0; }
.vd-dialog-header { display:flex; align-items:center; flex-shrink:0; gap:14px; padding:18px 24px; background:#fff; border-bottom:1px solid #e1eae5; }
.vd-dialog-heading { flex:1; min-width:0; }
.vd-eyebrow { color:#16804e; font-size:9px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.vd-dialog .vd-dialog-heading h2 { margin:3px 0; color:#142c20; font-size:20px; font-weight:750; line-height:1.25; }
.vd-dialog .vd-dialog-heading p { margin:0; color:#6c7b72; font-size:12px; overflow-wrap:anywhere; }
.vd-icon-button { display:inline-grid; place-items:center; flex:0 0 36px; width:36px; height:36px; padding:0; border:1px solid #dce6df; border-radius:9px; color:#365345; background:#fff; font-size:15px; text-decoration:none; cursor:pointer; }
.vd-icon-button:hover,.vd-icon-button:focus { color:#11623c; background:#e9f7ee; text-decoration:none; }
.vd-dialog button:focus-visible,.vd-dialog a:focus-visible,.vd-stage:focus-visible { outline:3px solid #4aba82; outline-offset:2px; }
.vd-dialog button:disabled { opacity:.35; cursor:default; }
.vd-close { align-self:flex-start; border-color:transparent; }
.vd-toolbar { display:flex; flex-shrink:0; align-items:center; justify-content:space-between; gap:12px; padding:12px 24px; background:#fff; }
.vd-current-document { min-width:0; }
.vd-current-document strong { display:block; color:#243e2f; font-size:13px; overflow-wrap:anywhere; }
.vd-current-document > span { display:block; margin-top:3px; color:#7b887f; font-size:10px; }
.vd-tools { display:flex; align-items:center; flex-shrink:0; gap:5px; }
.vd-fit-button { min-width:68px; border:0; padding:8px; border-radius:8px; background:transparent; color:#45604f; font-size:11px; font-weight:700; cursor:pointer; }
.vd-stage { position:relative; flex:1; min-height:70px; min-width:0; padding:20px; overflow:auto; background:#e8efeb; overscroll-behavior:contain; touch-action:pan-y pinch-zoom; }
.vd-stage.is-zoomed { touch-action:pan-x pan-y pinch-zoom; }
.vd-paper { position:relative; flex-shrink:0; margin:auto; background:#fff; box-shadow:0 3px 18px #203e2926; }
.vd-paper img,.vd-paper canvas { display:block; width:100%; height:100%; object-fit:contain; }
.vd-preview-status { position:absolute; top:50%; left:50%; width:85%; margin:0; transform:translate(-50%,-50%); color:#536a5b; font-size:13px; text-align:center; pointer-events:none; }
.vd-stage.is-error .vd-paper { opacity:.18; }
.vd-pdf-pages { display:flex; align-items:center; justify-content:center; flex-shrink:0; gap:16px; padding:7px 16px; background:#f4f8f5; border-top:1px solid #dce6df; font-size:11px; }
.vd-text-button { display:inline-flex; align-items:center; gap:6px; padding:6px 0; border:0; background:transparent; color:#16804e; font-size:11px; cursor:pointer; }
.vd-dialog-footer { flex-shrink:0; padding:12px 24px; border-top:1px solid #dce6df; background:#fff; }
.vd-navigation { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.vd-nav-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-width:95px; min-height:34px; padding:7px 12px; border:1px solid #dce6df; border-radius:9px; background:#fff; color:#294b37; font-size:12px; font-weight:700; cursor:pointer; }
.vd-nav-button:hover { background:#edf7f0; }
.vd-counter { color:#5b7062; font-size:12px; }
.vd-document-tabs { display:flex; gap:7px; overflow-x:auto; padding:10px 1px 4px; scrollbar-width:thin; }
.vd-document-tab { display:inline-flex; align-items:center; flex-shrink:0; gap:7px; max-width:210px; min-height:32px; padding:6px 10px; border:1px solid #e0e8e3; border-radius:8px; background:#f7faf8; color:#617468; font-size:11px; cursor:pointer; }
.vd-document-tab span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.vd-document-tab[aria-current="true"] { border-color:#16804e; background:#edf8f1; color:#11623c; font-weight:700; }
.vd-dialog .vd-help { display:flex; justify-content:center; align-items:center; gap:7px; margin:7px 0 0; color:#819087; font-size:10px; line-height:1.4; }
@media (max-width:767px) {
  .vd-document-card { flex-wrap:wrap; padding:16px; gap:12px; border-radius:14px; }
  .vd-document-card .vd-document-copy { flex-basis:calc(100% - 58px); }
  .vd-document-card .vd-view-button { width:100%; }
  .vd-dialog { width:100%; max-width:100%; height:100vh; height:100dvh; max-height:100vh; max-height:100dvh; border:0; border-radius:0; }
  .vd-dialog-header { padding:14px 16px; gap:10px; }
  .vd-dialog .vd-dialog-heading h2 { font-size:17px; }
  .vd-dialog-header .vd-heading-icon { width:38px; height:38px; flex-basis:38px; border-radius:11px; font-size:18px; }
  .vd-toolbar { flex-wrap:wrap; padding:10px 16px; gap:8px; }
  .vd-current-document { flex:1 1 120px; }
  .vd-stage { padding:14px; }
  .vd-dialog-footer { padding:10px 16px max(10px,env(safe-area-inset-bottom)); }
}
@media (max-height:500px) {
  .vd-dialog { height:100dvh; max-height:100dvh; width:100%; max-width:100%; border-radius:0; }
  .vd-dialog-header { padding:7px 16px; }
  .vd-eyebrow,.vd-dialog-heading p,.vd-help,.vd-heading-icon { display:none !important; }
  .vd-dialog .vd-dialog-heading h2 { font-size:15px; }
  .vd-toolbar { padding:5px 16px; }
  .vd-current-document > span { display:none; }
  .vd-dialog-footer { padding:5px 16px; }
  .vd-document-tabs { padding-top:5px; }
  .vd-stage { padding:10px; }
}
@media (prefers-reduced-motion:reduce) { .vd-dialog * { scroll-behavior:auto !important; } }
