/* A single scroll owner per pane; the page itself stays still on touch devices. */
html { height:100%; overflow:hidden; overscroll-behavior:none; }
body { position:fixed; inset:0; height:100%; min-height:0; overflow:hidden; padding:0; }
body::before, body::after { display:none; }
.petre-identity { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:16px; margin-bottom:20px; border-bottom:1px solid #cbd5e1; }
.petre-identity strong { font-size:24px; }
.petre-identity span { font-size:15px; white-space:nowrap; }
textarea { overscroll-behavior:contain; touch-action:pan-y pinch-zoom; font-size:16px; }
#document-container { min-height:0; overflow:hidden; overscroll-behavior:none; }
#pdf-frame { height:100%; min-height:0; width:100%; overscroll-behavior:contain; }
.card, .left-column, .right-column, #preview-container { min-height:0; }
.card { border-radius:8px; }
button { min-height:44px; }
@media(max-width:1023px) {
  body { height:100dvh; height:var(--app-height,100dvh); padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px); }
  .card, body.state-preview .card { display:flex; flex-direction:column; width:100% !important; max-width:620px !important; height:100%; margin:0 auto; padding:16px; overflow:hidden; }
  .left-column { flex:1; overflow-y:auto; overscroll-behavior:contain; }
  .right-column { flex:1; overflow:hidden; }
  body.state-preview .right-column, body.state-preview #preview-container { display:flex; flex-direction:column; height:100%; }
  #document-container { flex:1; height:auto !important; margin:0 0 12px; }
  .mobile-button-panel { flex:none; padding:0; }
  .button-grid-row { margin-top:8px; }
  body.state-loading .right-column { display:flex; align-items:center; justify-content:center; }
  .empty-state { min-height:0; }
}
@media(min-width:1024px) {
  body { padding:24px; height:100%; }
  #pdf-frame { height:100% !important; }
  #document-container { flex:1; }
  .left-column { overscroll-behavior:contain; }
}
