/* CodeXR Carousel image stage + PlayerBar frosted transport, in BFC's existing palette. */
@media screen {
  .premium-ui .bfc-document-reader {
    width:min(1120px,calc(100vw - 64px)) !important; max-width:none !important;
    height:auto !important; max-height:calc(100svh - 64px) !important; padding:0 !important;
    border:0; border-radius:16px !important; overflow:hidden;
    background:#f6f8facf !important; color:var(--color-base-content);
    backdrop-filter:blur(24px) saturate(120%); -webkit-backdrop-filter:blur(24px) saturate(120%);
    box-shadow:0 24px 72px #15223845 !important;
    font-family:'Nunito Sans','Segoe UI',sans-serif;
  }
  .premium-ui .bfc-document-reader::backdrop { background:#16243562; backdrop-filter:blur(4px); }
  .premium-ui .bfc-document-reader[open] { display:flex; flex-direction:column; animation:bfc-reader-open 220ms cubic-bezier(.16,1,.3,1); }
  .premium-ui .bfc-document-reader .document-dialog-head {
    display:flex; flex:none; align-items:center; gap:16px; padding:12px 20px;
    background:transparent !important; border-bottom:1px solid #ffffffa1;
  }
  .premium-ui .bfc-document-reader [data-document-title] { flex:1; font-size:15px; line-height:1.35; overflow-wrap:anywhere; }
  .premium-ui .bfc-document-reader .reader-close { margin-left:auto; }
  .premium-ui .bfc-document-reader .document-dialog-body {
    position:relative; display:flex; flex:1; align-items:center; justify-content:center;
    min-height:260px; height:clamp(300px,57svh,620px); overflow:auto;
    background:transparent !important; padding:24px;
    scrollbar-width:thin; scrollbar-color:#aab8c5 transparent;
  }
  .premium-ui .bfc-document-reader .document-dialog-body > img {
    position:relative; inset:auto; display:block; width:auto !important; height:auto !important; min-width:0;
    max-width:100%; max-height:100%; object-fit:contain; margin:auto;
    background:#fff; border-radius:2px !important; box-shadow:0 5px 18px #26374a14;
    transition:transform 160ms cubic-bezier(.16,1,.3,1);
  }
  .premium-ui .bfc-document-reader .document-dialog-body > iframe { position:relative; inset:auto; width:100%; height:100%; min-height:260px; background:#fff; border:0; }
  .premium-ui .bfc-document-reader[data-reader-detail=true] .document-dialog-body {
    display:block; overscroll-behavior:contain; touch-action:pan-x pan-y; scroll-behavior:auto;
  }
  .premium-ui .bfc-document-reader[data-reader-detail=true] .document-dialog-body > img {
    width:var(--reader-detail-width) !important; max-width:none !important; max-height:none !important;
    margin:0; animation:none !important;
  }
  .premium-ui .bfc-document-reader .document-dialog-body:focus-visible { outline:3px solid #1767a0; outline-offset:-3px; }
  .premium-ui .bfc-document-reader .document-dialog-body > [hidden] { display:none !important; }
  .premium-ui .bfc-document-reader[data-reader-state=loading] .document-dialog-body > img,
  .premium-ui .bfc-document-reader[data-reader-state=error] .document-dialog-body > img { visibility:hidden; }
  .premium-ui .bfc-document-reader[data-reader-state=ready] .document-dialog-body > img { animation:bfc-reader-paper 140ms ease-out; }
  .premium-ui .bfc-document-reader .reader-load-status { display:none; position:absolute; inset:0; align-items:center; justify-content:center; padding:24px; text-align:center; color:#445467; font-size:13px; }
  .premium-ui .bfc-document-reader:is([data-reader-state=loading],[data-reader-state=error]) .reader-load-status { display:flex; }
  .premium-ui .bfc-document-reader .reader-footer {
    flex:none; padding:0 20px 16px; display:flex; flex-direction:column; align-items:center; gap:10px;
  }
  .premium-ui .bfc-document-reader .reader-source-value {
    font-size:13px; font-weight:650; color:#35475b; margin:0; max-width:70ch;
    line-height:1.45; text-align:center; overflow-wrap:anywhere;
  }
  .premium-ui .bfc-document-reader .reader-detail-help {
    margin:0; color:#35475b; font-size:12px; line-height:1.45; text-align:center;
  }
  .premium-ui .bfc-document-reader .reader-crop-dock {
    display:grid; grid-template-columns:44px minmax(120px,1fr) 44px; align-items:center; gap:8px;
    width:min(100%,480px); padding:5px; background:#ffffffb8; border-radius:12px;
    box-shadow:inset 0 1px 0 #fff,0 7px 18px #26374a0c;
  }
  .premium-ui .bfc-document-reader .reader-field-identity { display:flex; align-items:center; justify-content:center; min-width:0; gap:10px; padding:0 4px; }
  .premium-ui .bfc-document-reader .reader-field-choice {
    min-height:44px !important; height:44px !important; min-width:0; width:auto; max-width:100%; padding:6px 26px 6px 0 !important;
    border:0 !important; border-radius:6px; box-shadow:none !important; background-color:transparent !important;
    color:#293b50 !important; font:700 13px 'Nunito Sans','Segoe UI',sans-serif; cursor:pointer;
  }
  .premium-ui .bfc-document-reader .reader-field-count { flex:none; font-size:11px; font-variant-numeric:tabular-nums; color:#4b5d70; }
  .premium-ui .bfc-document-reader .reader-tools { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; width:100%; }
  .premium-ui .bfc-document-reader .document-dialog-actions {
    display:flex; align-items:center; gap:4px; padding:0; background:transparent !important; border-radius:0;
  }
  .premium-ui .bfc-document-reader :is(.reader-control,.reader-close,.document-dialog-actions .compact) {
    display:inline-flex; align-items:center; justify-content:center; gap:7px; height:44px !important; min-height:44px !important;
    min-width:44px !important; padding:8px 12px !important; border:0 !important; border-radius:8px !important;
    background:transparent !important; box-shadow:none !important; color:#344960 !important; font-size:12px !important;
    transition:background-color 120ms,color 120ms;
  }
  .premium-ui .bfc-document-reader :is(.reader-control,.reader-close,.document-dialog-actions .compact):hover:not(:disabled) { background:#ffffffd1 !important; color:#245781 !important; }
  .premium-ui .bfc-document-reader :is(.reader-control,.reader-close) svg,
  .premium-ui .bfc-document-reader .document-dialog-actions svg { width:18px; height:18px; }
  .premium-ui .bfc-document-reader .reader-crop-dock .reader-control { padding:10px !important; width:44px; }
  .premium-ui .bfc-document-reader .reader-detail-toggle { width:108px; min-width:108px !important; }
  .premium-ui .bfc-document-reader .reader-control:disabled { opacity:.35; cursor:default; }
  .premium-ui .bfc-document-reader :is(button,a,select):focus-visible { outline:3px solid #1767a0 !important; outline-offset:2px !important; }
  .premium-ui .bfc-document-reader [hidden] { display:none !important; }
  .premium-ui .bfc-document-reader ::selection { background:#ffd6bf; color:#29313d; }
  @media(max-width:600px) {
    .premium-ui .bfc-document-reader { width:calc(100vw - 20px) !important; max-height:calc(100svh - 32px) !important; border-radius:14px !important; }
    .premium-ui .bfc-document-reader .document-dialog-head { padding:8px 12px; gap:8px; }
    .premium-ui .bfc-document-reader [data-document-title] { font-size:13px; }
    .premium-ui .bfc-document-reader .document-dialog-body { padding:12px; height:clamp(260px,50svh,480px); min-height:220px; }
    .premium-ui .bfc-document-reader .reader-footer { padding:0 12px 12px; gap:8px; }
    .premium-ui .bfc-document-reader .reader-source-value { font-size:12px; }
    .premium-ui .bfc-document-reader .reader-tools { gap:4px; }
    .premium-ui .bfc-document-reader .reader-field-identity { gap:5px; }
    .premium-ui .bfc-document-reader .reader-field-count { font-size:10px; }
    .premium-ui .bfc-document-reader .document-dialog-actions .compact span { display:none; }
  }
  @media(prefers-reduced-motion:reduce) {
    .premium-ui .bfc-document-reader[open],.premium-ui .bfc-document-reader[data-reader-state=ready] .document-dialog-body > img { animation:none; }
    .premium-ui .bfc-document-reader * { transition:none !important; }
  }
  @supports not(backdrop-filter:blur(1px)) { .premium-ui .bfc-document-reader { background:#f1f4f7 !important; } }
}
@keyframes bfc-reader-open { from { transform:translateY(8px) scale(.985); opacity:.8; } to { transform:translateY(0) scale(1); opacity:1; } }
@keyframes bfc-reader-paper { from { opacity:.4; } to { opacity:1; } }
