/* In-portal PDF viewer (app mode only). Colors come from the build: #17110D bar, #FFF6E6 text, #F5B524 main button. */
html.pdfv-open, html.pdfv-open body { overflow: hidden !important; }
.pdfv { display: none; position: fixed; inset: 0; z-index: 2147483000; flex-direction: column; background: #525659;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; -webkit-text-size-adjust: 100%; }
.pdfv.is-open { display: flex; }
.pdfv-bar { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; background: #17110D; color: #FFF6E6;
  padding: calc(8px + env(safe-area-inset-top, 0px)) calc(10px + env(safe-area-inset-right, 0px)) 8px calc(10px + env(safe-area-inset-left, 0px));
  box-shadow: 0 1px 0 rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.18); min-height: 56px; box-sizing: border-box; }
.pdfv-btn { -webkit-appearance: none; appearance: none; display: inline-flex; align-items: center; gap: 6px; height: 44px; min-width: 44px;
  padding: 0 14px; border-radius: 10px; border: 1px solid rgba(255,246,230,.35); background: transparent; color: inherit; font-weight: 600; font-size: 16px; line-height: 1;
  cursor: pointer; white-space: nowrap; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
.pdfv-btn svg { width: 22px; height: 22px; flex: 0 0 22px; }
.pdfv-btn:disabled { opacity: .45; cursor: default; }
.pdfv-btn[hidden] { display: none; }
.pdfv-btn:focus-visible { outline: 3px solid #F5B524; outline-offset: 2px; }
.pdfv-back { background: #F5B524; border-color: #F5B524; color: #17110D; padding-left: 8px; font-size: 17px; }
.pdfv-ico { padding: 0; justify-content: center; }
.pdfv-title { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; font-size: 15px; line-height: 1.2; opacity: .85; text-align: center; }
.pdfv-tools { display: flex; gap: 8px; flex: 0 0 auto; }
.pdfv-body { flex: 1 1 auto; overflow: auto; -webkit-overflow-scrolling: touch; padding: 12px 12px calc(16px + env(safe-area-inset-bottom, 0px)); box-sizing: border-box; text-align: center; }
.pdfv-sheet { display: block; margin: 0 auto 12px; background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.35); }
.pdfv-sheet canvas { display: block; width: 100%; height: 100%; }
.pdfv-frame { width: 100%; height: 100%; border: 0; background: #fff; display: block; }
.pdfv-msg { color: #fff; font-weight: 500; font-size: 17px; line-height: 1.5; padding: 60px 20px; }
.pdfv-msg .pdfv-btn { margin-top: 16px; color: #fff; border-color: rgba(255,255,255,.6); }
.pdfv-spin { display: inline-block; width: 18px; height: 18px; margin-right: 10px; vertical-align: -3px; border: 3px solid rgba(255,255,255,.35); border-top-color: #fff; border-radius: 50%; animation: pdfv-spin .8s linear infinite; }
@keyframes pdfv-spin { to { transform: rotate(360deg); } }
.pdfv-page { position: absolute; right: 14px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); background: rgba(0,0,0,.65); color: #fff; font-weight: 600; font-size: 13px; line-height: 1; padding: 7px 10px; border-radius: 14px; pointer-events: none; }
.pdfv-page:empty { display: none; }
.pdfv-img { max-width: 100%; height: auto; background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.35); }
.pdfv-msg small { display: inline-block; margin-top: 8px; font-size: 15px; opacity: .8; }
.pdfv-card { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 12px; min-height: 0; height: auto; padding: 16px; box-sizing: border-box; background: #f4f4f4; border-radius: 8px; text-align: center; }
.pdfv-card-name { font-weight: 600; font-size: 16px; word-break: break-word; color: #222; }
.pdfv-card .pdfv-card-open { background: #F5B524; border-color: #F5B524; color: #17110D; }
@media (max-width: 640px) {
  .pdfv-title, .pdfv-ico { display: none; }
  .pdfv-tools { margin-left: auto; }
  .pdfv-tools .pdfv-btn span { display: none; }
  .pdfv-tools .pdfv-btn { padding: 0; justify-content: center; }
}
@media print { .pdfv { display: none !important; } }
