.fb-layout { display:grid; grid-template-columns:minmax(280px, .9fr) minmax(0, 1.1fr); gap:24px; }
.fb-editor,.fb-preview { min-width:0; }
.fb-node { border:1px solid var(--line); border-radius:8px; padding:10px; margin:10px 0; min-width:0; }
.fb-children { margin-left:12px; }
.fb-actions { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.fb-node .qr-field { margin:0 0 8px; }
.fb-frame { overflow:auto; max-width:100%; border:1px solid var(--line); border-radius:8px; background:#fff; max-height:70vh; }
#fb-sheet svg { display:block; max-width:none; }
.fb-preview { align-self:start; position:sticky; top:16px; }
@media(max-width:850px) { .fb-layout { grid-template-columns:minmax(0,1fr); } .fb-preview { position:static; } }
@page { size:A4 landscape; margin:10mm; }
@media print {
  .site-header,.site-footer,.breadcrumb,main > *:not(#fb-tool),.fb-editor,.fb-preview > *:not(.fb-frame) { display:none!important; }
  html,body { padding:0!important; margin:0!important; background:white!important; }
  main.wrap { max-width:none!important; width:auto!important; padding:0!important; margin:0!important; }
  #fb-tool { border:0!important; padding:0!important; margin:0!important; box-shadow:none!important; }
  .fb-layout { display:block; }
  .fb-preview { position:static; }
  .fb-frame { overflow:visible; border:0; max-height:none; height:189mm; width:277mm; }
  #fb-sheet { width:100%!important; height:100%; }
  #fb-sheet svg { width:100%!important; height:100%!important; break-inside:avoid; print-color-adjust:exact; -webkit-print-color-adjust:exact; }
}
