/* One viewport layout for every form step; answers scroll above the keyboard. */
#pawFlow { --form-inset:54px; --form-gap:10px; --form-padding:24px; min-width:0; }
#pawFlow .conversation-main { display:flex; flex-direction:column; height:100%; min-width:0; min-height:0; padding:14px var(--form-padding) 0; gap:var(--form-gap); overflow:hidden; }
#pawFlow .step-top,#pawFlow .question-row,#pawFlow .input-dock,#pawFlow .flow-footer { flex:0 0 auto; min-width:0; }
#pawFlow .question-row { margin:0; }
#pawFlow .answer-zone { display:flex; flex-direction:column; flex:1 1 0; min-width:0; min-height:0; padding:0 0 0 var(--form-inset); overflow:hidden; scrollbar-gutter:auto; }
#pawFlow .answer-label { flex:0 0 auto; margin:0 0 8px; }
#pawFlow .answer-zone>.screen.active { flex:1 1 0; min-width:0; min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; scroll-padding:14px; padding:0 3px 3px 0; }
#pawFlow #stepBody,#pawFlow #securityContent,#pawFlow #printTable { min-width:0; max-width:100%; }
#pawFlow .screen[data-step-kind="text"] #stepBody { padding:clamp(12px,1.5vw,22px); }
#pawFlow .lastProductsForm { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:16px; padding:0!important; margin:0!important; border:0; border-radius:0; background:transparent; }
#pawFlow .lastProductField { min-width:0; }
#pawFlow .lastProductField .fieldLabel { margin:0 0 8px; line-height:1.4; }
#pawFlow .lastProductField .bigInput { min-height:54px; padding:11px 14px; font-size:clamp(18px,1.45vw,23px); }
#pawFlow .suggestBox { gap:6px; margin-top:8px; }
#pawFlow .suggestItem { max-width:100%; overflow-wrap:anywhere; }
#pawFlow .lastProductSuggestions { margin:0; }
#pawFlow .input-dock { padding:2px 0 0 var(--form-inset); background:var(--paper); }
#kbdSplit,#kbd { width:100%; min-width:0; }
#kbdWrap .keyboard { width:min(100%,1040px); max-width:100%; margin:0 auto; padding:0 0 2px; gap:4px; background:transparent; border:0; }
#kbdWrap .keyboard.numeric { width:min(100%,390px); margin:0 auto; }
#kbdWrap .key-row { gap:5px; min-width:0; }
#kbdWrap .key { height:clamp(36px,4.8dvh,52px); min-height:0; min-width:0; }
#pawFlow .conversation-main>.flow-footer { position:static; margin:0 calc(-1 * var(--form-padding)); padding:10px var(--form-padding) max(10px,env(safe-area-inset-bottom)) calc(var(--form-padding) + var(--form-inset)); min-height:64px; }
/* The destination list owns its scrolling so its requirements stay visible. */
body[data-kiosk-step-key="unloadingDestination"] #pawFlow .answer-zone>.screen.active { overflow:hidden; }
body[data-kiosk-step-key="unloadingDestination"] #pawFlow #stepBody { height:100%; }
@media(min-width:1200px) { #pawFlow .lastProductsForm { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1100px) { #pawFlow { --form-inset:0px; } }
@media(max-width:760px) {
  #pawFlow { --form-padding:12px; --form-gap:8px; }
  #pawFlow .conversation-main { padding-top:10px; }
  #kbdWrap .keyboard { padding-right:0; }
  #kbdWrap .key-row { gap:3px; }
  #kbdWrap .key { font-size:clamp(11px,2.3vw,14px); }
  #kbdWrap .key.wide { font-size:clamp(10px,2.1vw,13px); }
}
@media(max-height:740px) {
  #pawFlow { --form-gap:7px; }
  #pawFlow .conversation-main { padding-top:8px; }
  #pawFlow .question-bubble { padding:10px 15px; }
  #pawFlow .speaker-name { display:none; }
  #pawFlow .question-bubble .step-title { font-size:24px; margin-bottom:5px; }
  #pawFlow .question-bubble .step-sub { font-size:13px; line-height:1.35; }
  #pawFlow .answer-label { margin-bottom:5px; }
  #pawFlow .screen[data-step-kind="text"] #stepBody { padding:12px 14px; }
  #pawFlow .lastProductsForm { gap:12px; }
  #pawFlow .bigInput { min-height:50px; padding:9px 13px; font-size:21px; }
  #kbdWrap .key { height:36px; }
  #pawFlow .conversation-main>.flow-footer { min-height:54px; padding-top:6px; padding-bottom:max(6px,env(safe-area-inset-bottom)); }
  #pawFlow .flow-footer .primary,#pawFlow .flow-footer .back { min-height:42px; padding-top:8px; padding-bottom:8px; }
}
@media(max-height:520px) {
  #pawFlow { --form-gap:5px; }
  #pawFlow .paw-rail-host { display:none; }
  #pawFlow .conversation-layout { grid-template-columns:minmax(0,1fr); }
  #pawFlow .step-top { display:none; }
  #pawFlow .answer-label { display:none; }
  #pawFlow .question-bubble .step-title { font-size:21px; margin:0; }
  #pawFlow .question-bubble .step-sub { display:none; }
  #pawFlow .guide-launch { min-height:38px; padding:6px 9px; }
  #pawFlow .lastProductField .bigInput { min-height:48px; padding:8px 12px; }
  #kbdWrap .key { height:28px; font-size:12px; }
  #pawFlow .flow-footer .primary,#pawFlow .flow-footer .back { min-height:38px; }
  #pawFlow .conversation-main>.flow-footer { min-height:48px; }
}
@media(max-width:760px) and (max-height:740px) {
  #kbdWrap .key { height:clamp(28px,4.5dvh,32px); }
}
@media(max-width:520px) {
  #pawFlow .question-bubble { padding-bottom:43px; }
  #pawFlow .question-bubble .step-title { font-size:22px; }
  #pawFlow .guide-launch { min-height:32px; max-width:calc(100% - 18px); padding:5px 10px; }
}
@media(max-width:650px) {
  body.kiosk-flow { --kiosk-header:88px; }
  body.kiosk-flow #pawHeader { grid-template-rows:32px 40px; gap:4px 12px; padding:6px 14px; }
  body.kiosk-flow #pawHeader .brand { min-width:0; }
  body.kiosk-flow #pawHeader .brand img { width:min(125px,100%); max-height:32px; object-fit:contain; }
  body.kiosk-flow #pawHeader .quiet { min-height:40px; padding:7px 10px; }
  body.kiosk-flow .kiosk-clock { max-width:155px; }
  body.kiosk-flow .kiosk-clock>span { font-size:12px; }
}
@media(max-width:650px) and (max-height:650px) {
  #pawFlow .step-top { display:none; }
  #pawFlow .answer-zone { min-height:88px; }
  #pawFlow .question-row { display:flex; flex-direction:column; align-items:stretch; flex-shrink:1; min-height:60px; gap:0; overflow:hidden; background:#fff; border-radius:0 14px 14px 14px; }
  #pawFlow .question-bubble { flex:1 1 auto; min-height:0; padding-bottom:8px; overflow:auto; }
  #pawFlow #pawGuideLaunch { display:flex; justify-content:flex-end; flex:0 0 auto; padding:0 9px 7px; }
  #pawFlow .guide-launch { position:static; max-width:100%; min-height:32px; padding:5px 10px; }
}
