.process-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; }
.cms-page-heading.process-heading h1 { margin-top:12px; font-size:32px; line-height:1.2; }
.process-add { border-block:1px solid var(--cms-line, #d7dce0); padding:24px 0; margin-bottom:28px; }
.process-add h2, .process-items h2 { font-size:22px; margin-bottom:18px; }
.process-fields { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(80px,1fr); gap:14px; margin-bottom:16px; }
.process-fields--two { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:16px; }
.process-add label, .process-item label { display:block; width:100%; font-weight:600; font-size:14px; }
.process-add label > *, .process-item label > * { margin-top:6px; font-weight:400; }
.process-item { display:grid; grid-template-columns:180px minmax(0,1fr); gap:24px; padding:24px 0; border-bottom:1px solid var(--cms-line, #d7dce0); }
.process-item-media { display:flex; flex-direction:column; align-items:center; gap:10px; min-width:0; }
.process-item-media img, .process-item-media video { width:100%; height:140px; object-fit:contain; background:rgba(100,110,120,.08); border-radius:4px; }
.process-item-editor { min-width:0; }
.process-item-editor > form + form { margin-top:12px; }
.process-form-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.process-form-actions progress { max-width:100%; }
.process-selection { display:grid; gap:8px; margin-top:12px; }
.process-selection:empty { display:none; }
.process-video-mark { font-size:32px; padding:24px; color:var(--cms-accent,#28747a); }
.process-dialog { position:fixed; inset:0; width:100%; height:100%; max-width:none; max-height:none; margin:0; border:0; padding:20px; background:#101316; color:#f6f7f8; z-index:20000; }
.process-dialog::backdrop { background:#101316; }
.process-dialog[open] { display:flex; flex-direction:column; gap:12px; }
.process-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.process-dialog-head h2 { font-size:18px; margin:0; color:inherit; overflow-wrap:anywhere; min-width:0; }
.process-dialog-head button { flex-shrink:0; }
.process-dialog button { border:1px solid #646b70; background:transparent; color:#fff; border-radius:4px; min-width:44px; min-height:44px; padding:8px 12px; }
.process-dialog button:hover { background:#323b40; }
.process-dialog button:focus-visible, .process-dialog a:focus-visible { outline:3px solid #81d9d4; outline-offset:3px; }
.process-dialog button:disabled { opacity:.4; cursor:default; }
.process-stage { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); place-items:center; flex:1; min-height:0; overflow:auto; position:relative; }
.process-stage img, .process-stage video { display:block; width:100%; height:100%; max-height:100%; object-fit:contain; }
.process-stage img { touch-action:pan-y; }
.process-stage iframe { border:0; width:100%; height:100%; }
.process-load { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); padding:12px 16px; max-width:90%; text-align:center; background:#101316; color:#f6f7f8; }
.process-stage-message { text-align:center; max-width:540px; padding:16px; }
.process-stage-message p { color:#d0d5d9; }
.process-dialog a { color:#b9ede9; text-decoration:underline; }
.process-caption { max-height:20vh; overflow:auto; text-align:center; white-space:pre-line; font-size:15px; }
.process-caption:empty { display:none; }
.process-navigation { display:flex; justify-content:center; align-items:center; gap:20px; flex-shrink:0; }
.process-navigation output { min-width:80px; text-align:center; }
.has-process-dialog { overflow:hidden; }
@media (max-width:700px) {
  .process-heading { align-items:flex-start; flex-direction:column; }
  .process-item { grid-template-columns:1fr; gap:16px; }
  .process-item-media { align-items:flex-start; }
  .process-item-media img, .process-item-media video { height:170px; max-width:300px; }
  .process-fields, .process-fields--two { grid-template-columns:1fr; }
  .process-dialog { padding:12px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
}
