/* Three-column workspace matching the document studio. */
body { --site-section-size: 14px; --site-control-size: 12px; background: #fafafa; color: #0f172a; }
body > .gov-header, body > .gov-tricolor-strip { display: none; }
.pn-reference-toolbar { min-height: 60px; padding: 10px 16px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 9px; background: white; border-bottom: 1px solid #ffb98c; box-sizing: border-box; }
.pn-reference-toolbar a { color: #0f172a; font-weight: 700; font-size: 13px; text-decoration: none; padding: 8px 12px; }
.pn-reference-toolbar .btn { font-size: 12px; min-height: 36px; border-radius: 6px; margin: 0; cursor: pointer; }
.pn-reference-toolbar > a, .pn-reference-toolbar > .btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
.pn-action-icon { width: 16px; height: 16px; flex: 0 0 16px; vertical-align: middle; }
.pn-reference-status { padding: 10px 15px; background: #fff7ed; color: #9a3412; font-size: 14px; }
main.studio-master-grid { display: grid; grid-template-columns: 330px minmax(0, 1fr) 340px; align-items: start; gap: 12px; padding: 10px 11px 24px; width: 100%; max-width: none; margin: 0; box-sizing: border-box; }
#pnSidebar, .pn-settings-sidebar { display: flex; flex-direction: column; gap: 0; background: white; border: 1px solid #ffcca7; border-radius: 14px; min-width: 0; padding: 0; position: sticky; top: 10px; max-height: calc(100vh - 20px); overflow-y: auto; scrollbar-width: thin; }
.pn-panel { border: 0; border-radius: 0; box-shadow: none; padding: 14px 12px; gap: 12px; background: white; }
.pn-panel + .pn-panel { border-top: 1px solid #ffcca7; }
.pn-panel-header { border-color: #ffcca7; padding-bottom: 12px; }
.pn-panel-title { font-size: 14px; }
.pn-badge-tag { font-size: 10px; }
.pn-mode-tabs { gap: 7px; }
.pn-mode-tab, .pn-preset-btn { border-color: #ffcca7; background: #fff; border-radius: 9px; }
.pn-mode-tab.active, .pn-preset-btn.active { border-color: #ff5a00; background: #fff5e9; color: #e95000; }
.pn-stage-col { gap: 0; min-width: 0; }
.pn-view-toolbar { display: flex; justify-content: center; align-items: center; min-height: 38px; background: white; border: 1px solid #ffcca7; border-radius: 14px; margin-bottom: 0; }
#pnZoomHud { position: static !important; align-items: center; gap: 8px !important; }
#pnZoomHud .btn, #pnZoomHud .badge { background: transparent; border: 0; box-shadow: none; color: #475569; font-size: 12px; }
#pnMainStage { border: 1px solid #ffcca7; border-radius: 14px; background: #edf0f3; padding: 6px 16px 20px; min-height: calc(100vh - 155px); justify-content: flex-start; overflow: auto; }
#pnMainStage > div:first-child { position: static !important; align-self: flex-end; margin: 4px 0; }
#pnResBadge { font-size: 10px !important; box-shadow: none !important; background: transparent; color: #64748b; padding: 0 !important; }
.pn-preview-paper { width: min(100%, 595px); aspect-ratio: 210 / 297; flex-shrink: 0; background: white; border: 1px solid #d1d5db; box-shadow: 0 12px 28px #0f172a20; display: flex; align-items: center; justify-content: center; position: relative; }
#pnUploadEmpty { width: 85% !important; max-width: 340px !important; padding: 24px !important; background: white !important; border: 0 !important; box-shadow: none !important; text-align: center; cursor: pointer; }
#pnUploadEmpty::before { content: '▤'; display: block; color: #ff5a00; background: #fff7ed; border-radius: 50%; width: 64px; height: 64px; line-height: 64px; margin: 0 auto 16px; font-size: 28px; }
#pnUploadEmpty h4 { font-size: 16px; margin-bottom: 10px; }
#pnUploadEmpty p { font-size: 13px; color: #64748b; }
#pnUploadEmpty::after { content: 'Upload Photo'; display: inline-block; margin-top: 16px; background: #ff5a00; color: white; padding: 10px 18px; border-radius: 6px; font-weight: 700; font-size: 12px; }
.pn-preview-paper { cursor: grab; }
.pn-preview-paper.is-dragging { cursor: grabbing; }
#pnStageContainer { max-width: 80%; touch-action: none; }
#pnCanvas { max-height: 65vh; }
.pn-quick-bar { margin-top: 10px; border: 1px solid #ffcca7; background: white; border-radius: 10px; padding: 8px; justify-content: center; }
@media (max-width: 1250px) {
  main.studio-master-grid { grid-template-columns: 270px minmax(0, 1fr) 280px; }
}
@media (max-width: 1000px) {
  main.studio-master-grid { grid-template-columns: 260px minmax(0, 1fr); }
  .pn-settings-sidebar { grid-column: 1 / -1; position: static; max-height: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
  main.studio-master-grid { grid-template-columns: minmax(0, 1fr); }
  #pnSidebar, .pn-settings-sidebar { position: static; max-height: none; }
  .pn-stage-col { grid-row: 1; }
  .pn-settings-sidebar { display: flex; }
  #pnMainStage { min-height: 480px; }
  .pn-reference-toolbar { gap: 5px; }
}
