/* InspectionPress public inspector TinyMCE + Rapid Fire browser-only demonstration v9. */
.ip-real-demo[data-ip-real-role="inspectors"] {--ip-rf-border:#cbd5e1}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell{min-width:0}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell .tox-tinymce{border:1px solid #cbd5e1!important;border-radius:0!important;max-width:100%}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell .tox .tox-toolbar__primary{background:#f8fafc!important}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell .tox .tox-tbtn{border-radius:0!important}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-writer-status{padding:10px 12px;background:#eef6ff;border-left:3px solid #2563eb;color:#334155;font-size:13px;margin:11px 0 0;min-height:30px}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-added-photo{border-color:#2563eb!important}
.ip-demo-rf-photo-dialog{position:fixed;inset:0;margin:auto;border:0;padding:20px;background:#0f172a;color:white;max-width:100vw;max-height:100dvh;border-radius:0}
.ip-demo-rf-photo-dialog::backdrop{background:rgba(5,10,20,.93)}
.ip-demo-rf-photo-dialog img,.ip-demo-rf-photo-dialog video{display:block;width:auto;height:auto;max-width:min(94vw,1300px);max-height:83dvh;object-fit:contain}
.ip-demo-rf-photo-dialog button{margin:0 0 10px auto;display:block;background:white;border:1px solid #cbd5e1;padding:8px 12px;color:#0f172a;border-radius:0}
/* dialog is promoted to the browser top layer, above the public site's sticky header */
/* v10 camera matches the real Rapid Fire modal structure, with local-only functionality. */
dialog.ip-demo-rf-dialog{position:fixed;inset:0;margin:auto;padding:0;border:0;border-radius:0;background:transparent;color:#0f172a;width:min(920px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:min(82dvh,900px);overflow:visible;box-shadow:none}
dialog.ip-demo-rf-dialog::backdrop{background:rgba(0,0,0,.65)}
dialog.ip-demo-rf-dialog[open]{display:block}
dialog.ip-demo-rf-dialog *,dialog.ip-demo-rf-dialog *::before,dialog.ip-demo-rf-dialog *::after{box-sizing:border-box;border-radius:0!important}
dialog.ip-demo-rf-dialog .ip-rf-modal-body{display:flex;flex-direction:column;max-height:min(82dvh,900px);overflow:hidden;background:#fff;box-shadow:0 20px 45px #0007;border:1px solid #d1d5db}
dialog.ip-demo-rf-dialog button{cursor:pointer;font:inherit}
dialog.ip-demo-rf-dialog button:disabled{opacity:.45;cursor:not-allowed}
dialog.ip-demo-rf-dialog .ip-rf-inline-icon{width:1.35em;height:1.35em;display:block;flex:none}
dialog.ip-demo-rf-dialog .ip-rf-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#f9fafb;color:#334155}
dialog.ip-demo-rf-dialog .ip-rf-header-details{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap}
dialog.ip-demo-rf-dialog [data-rf-status]{font-size:13px;color:#64748b}
dialog.ip-demo-rf-dialog .ip-rf-hand-toggle{display:none;border:1px solid #cbd5e1;background:#fff;color:#334155;padding:7px 10px;font-size:13px}
dialog.ip-demo-rf-dialog .ip-rf-close-button{border:1px solid #cbd5e1;background:#fff;color:#111827;padding:9px 14px;font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:8px}
dialog.ip-demo-rf-dialog .ip-rf-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,1fr);gap:14px;overflow:auto;min-height:0;align-items:start;padding:16px}
dialog.ip-demo-rf-dialog .ip-rf-preview-pane,dialog.ip-demo-rf-dialog .ip-rf-stack-pane{min-width:0}
dialog.ip-demo-rf-dialog .ip-rf-stage{position:relative;background:#000;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:205px}
dialog.ip-demo-rf-dialog [data-rf-video]{display:block;width:100%;height:auto;max-height:35dvh;min-height:200px;object-fit:contain;background:#000}
dialog.ip-demo-rf-dialog .ip-rf-badges{position:absolute;bottom:10px;left:12px;z-index:4;font-size:12px;color:white;background:#0008;padding:5px 10px}
dialog.ip-demo-rf-dialog .ip-rf-rail,dialog.ip-demo-rf-dialog .ip-rf-landscape-close,dialog.ip-demo-rf-dialog .ip-rf-landscape-hand{display:none}
dialog.ip-demo-rf-dialog .ip-rf-portrait-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
dialog.ip-demo-rf-dialog .ip-rf-portrait-controls p{margin:0;color:#64748b;font-size:13px;line-height:1.4;flex:1 1 150px}
dialog.ip-demo-rf-dialog .ip-rf-portrait-buttons{display:flex;gap:7px;flex:0 0 auto}
dialog.ip-demo-rf-dialog .ip-rf-clear,dialog.ip-demo-rf-dialog .ip-rf-upload{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cbd5e1;background:#fff;color:#111827;font-size:14px;padding:10px 12px;white-space:nowrap}
dialog.ip-demo-rf-dialog .ip-rf-upload{background:#4f46e5;border-color:#4f46e5;color:#fff}
dialog.ip-demo-rf-dialog .ip-rf-stack-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
dialog.ip-demo-rf-dialog .ip-rf-stack-head strong{font-weight:800;font-size:19px;color:#1f2937}
dialog.ip-demo-rf-dialog .ip-rf-stack-head span{font-size:12px;color:#64748b}
dialog.ip-demo-rf-dialog .ip-rf-shelf{border:1px solid #e5e7eb;background:#f9fafb;padding:12px;min-height:160px;max-height:300px;overflow-y:auto}
dialog.ip-demo-rf-dialog [data-rf-thumbs]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
dialog.ip-demo-rf-dialog .ip-rf-thumb{position:relative;aspect-ratio:1/1;border:1px solid #cbd5e1;overflow:hidden;padding:0;background:#fff}
dialog.ip-demo-rf-dialog .ip-rf-thumb img,dialog.ip-demo-rf-dialog .ip-rf-thumb video{width:100%;height:100%;object-fit:cover;display:block}
dialog.ip-demo-rf-dialog .ip-rf-thumb span{position:absolute;right:3px;top:3px;color:#fff;background:#0009;padding:2px 6px;font-size:11px}
dialog.ip-demo-rf-dialog .ip-rf-fallback-caption,dialog.ip-demo-rf-dialog .ip-rf-disclaimer{font-size:12px;color:#64748b;line-height:1.5;margin:12px 0 0}
dialog.ip-demo-rf-dialog .ip-rf-fallback-caption button{color:#2563eb;text-decoration:underline;border:0;padding:0;background:transparent}
dialog.ip-demo-rf-dialog .ip-rf-footer{flex:0 0 auto;background:#f9fafb;border-top:1px solid #e5e7eb;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
dialog.ip-demo-rf-dialog [data-rf-error]{font-size:12px;color:#b91c1c;min-width:0}
dialog.ip-demo-rf-dialog .ip-rf-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
dialog.ip-demo-rf-dialog .ip-rf-footer-actions>button{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;padding:10px 12px;font-size:14px;white-space:nowrap;color:#fff}
dialog.ip-demo-rf-dialog .ip-rf-torch{background:#eab308!important;color:#fff!important;border-color:#eab308!important}
dialog.ip-demo-rf-dialog .ip-rf-torch.is-on{background:#eab308!important}
dialog.ip-demo-rf-dialog .ip-rf-switch{background:#fff!important;color:#111827!important;border-color:#e5e7eb!important}
dialog.ip-demo-rf-dialog .ip-rf-zoom{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}
dialog.ip-demo-rf-dialog .ip-rf-capture{background:#059669!important;color:#fff!important;border-color:#059669!important}
dialog.ip-demo-rf-dialog [data-rf-fallback-input],.ip-real-demo[data-ip-real-role="inspectors"] [data-ip-demo-upload-picker]{display:none!important}
@media(max-width:750px){
 dialog.ip-demo-rf-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:85dvh}
 dialog.ip-demo-rf-dialog .ip-rf-modal-body{max-height:85dvh}
 dialog.ip-demo-rf-dialog .ip-rf-body{display:block;padding:14px;overflow-y:auto}
 dialog.ip-demo-rf-dialog .ip-rf-stage{min-height:205px}
 dialog.ip-demo-rf-dialog [data-rf-video]{max-height:39dvh;min-height:200px}
 dialog.ip-demo-rf-dialog .ip-rf-stack-pane{margin-top:22px}
 dialog.ip-demo-rf-dialog .ip-rf-shelf{min-height:170px;max-height:320px}
 dialog.ip-demo-rf-dialog .ip-rf-footer{padding:12px}
 dialog.ip-demo-rf-dialog .ip-rf-footer-actions{width:100%;justify-content:space-between;flex-wrap:nowrap;gap:5px}
 dialog.ip-demo-rf-dialog .ip-rf-footer-actions>button{min-width:0;flex:0 0 auto;padding:10px 9px;font-size:13px}
 dialog.ip-demo-rf-dialog .ip-rf-torch-label{display:none}
}
/* The actual writer reserves the video viewport for landscape and places the shelf below it. */
@media(orientation:landscape) and (max-height:850px){
 dialog.ip-demo-rf-dialog.rf-landscape-active{inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;overflow:auto;background:#000;border:0}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-modal-body{max-height:none;min-height:100dvh;background:#000;border:0;overflow:visible}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-header,dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-footer{display:none!important}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-body{display:block;overflow:visible;padding:0;margin:0;background:#000}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-preview-pane{background:#000}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-stage{height:100dvh;min-height:100dvh;max-height:100dvh;background:#000;padding:0}
 dialog.ip-demo-rf-dialog.rf-landscape-active [data-rf-video]{display:block;width:100%;height:100dvh;max-height:100dvh;min-height:0;max-width:70%;object-fit:contain;margin:auto}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-rail{display:flex;flex-direction:column;gap:12px;position:absolute;z-index:9;top:50%;transform:translateY(-50%)}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-rail-left{left:12px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-rail-right{right:12px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-rail-btn{display:flex;width:62px;height:62px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;font-size:20px;padding:8px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-rail-btn span{font-size:12px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-badges{left:15px;bottom:10px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-landscape-hand{position:absolute;display:flex;top:9px;right:94px;z-index:12;background:#0009;color:#fff;border:1px solid #fff8;padding:7px 9px;gap:6px;font-size:13px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-landscape-close{position:absolute;display:flex;right:10px;top:9px;z-index:12;background:#0009;color:white;border:1px solid #fff8;padding:7px 11px;gap:6px}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-portrait-controls{display:flex;margin:0;padding:18px;background:#fff;color:#334155}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-stack-pane{display:block;background:#fff;padding:16px;margin:0}
 dialog.ip-demo-rf-dialog.rf-landscape-active .ip-rf-shelf{max-height:none;min-height:260px}
}
/* Only the inspector demo loses redundant nested frames on mobile. */
@media(max-width:700px){
 #ipsh3 .ipsh3-panels{padding:4px!important}
 #ipsh3 .ipsh3-panel>.ip-real-demo[data-ip-real-role="inspectors"]{padding:0!important;overflow-x:visible!important;border:0!important}
 .ipix-workspace-section .ipix-container:has(.ip-real-demo[data-ip-real-role="inspectors"]){padding-left:6px!important;padding-right:6px!important}
 .ip-real-demo[data-ip-real-role="inspectors"]{padding:0!important;border:0!important;background:transparent!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-banner{margin:0 0 8px;padding:9px 8px}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-shell{border:0!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-nav{padding:10px 8px;gap:7px;border-top:1px solid var(--ip-line)}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-body{display:flex;flex-direction:column;gap:10px;padding:6px 0!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-panel{width:100%;padding:10px!important;margin:0!important;min-width:0;box-shadow:none!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-panel:first-child{border-top:0!important;border-left:0!important;border-right:0!important;border-bottom:1px solid var(--ip-line)!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-writer-panel:nth-child(2){border-top:0!important;border-left:0!important;border-right:0!important;border-bottom:1px solid var(--ip-line)!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell .tox-tinymce{width:100%!important;min-width:0!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-tinymce-shell .tox-editor-header{width:100%!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-finding-toolbar,.ip-real-demo[data-ip-real-role="inspectors"] .ip-real-media-grid{gap:6px!important;margin-bottom:6px!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-finding-toolbar>button,.ip-real-demo[data-ip-real-role="inspectors"] .ip-real-finding-toolbar>.ip-demo-options-wrap>.ip-report-options-toggle,.ip-real-demo[data-ip-real-role="inspectors"] .ip-real-media-grid>.ip-finding-media-btn{min-height:0!important;max-height:none!important;aspect-ratio:1/1!important;padding:5px!important}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-label{margin-bottom:7px}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-editor-hint{font-size:12px}
}
/* The marketing demo intentionally exposes Capture at desktop width too; the authenticated
   writer limits the rapid-fire button to mobile. This public demo allows browser camera testing. */
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-mobile-capture{display:flex!important}
@media(min-width:641px){
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-media-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .ip-real-demo[data-ip-real-role="inspectors"] .ip-real-media-grid>.ip-finding-media-btn{min-height:90px;max-height:none;aspect-ratio:1/1}
}
.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-editor-hint{font-size:12px;font-weight:400;line-height:1.4;color:#64748b;margin:6px 0 0}

.ip-real-demo[data-ip-real-role="inspectors"] .ip-demo-added-photo video{width:100%;height:100%;object-fit:cover;display:block}

/* Follow the site's persisted theme rather than OS auto-dark. */
#ipsh3[data-ipsh3-theme="dark"] .ip-demo-writer-status,
html[data-theme="dark"] .ip-demo-writer-status,body.dark .ip-demo-writer-status{background:#172033!important;color:#e2e8f0!important}
#ipsh3[data-ipsh3-theme="dark"] .ip-demo-editor-hint,
html[data-theme="dark"] .ip-demo-editor-hint,body.dark .ip-demo-editor-hint{color:#cbd5e1!important}
#ipsh3[data-ipsh3-theme="dark"] dialog.ip-demo-rf-dialog,
html[data-theme="dark"] dialog.ip-demo-rf-dialog,body.dark dialog.ip-demo-rf-dialog{background:#111827!important;color:#f8fafc!important}
#ipsh3[data-ipsh3-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-header,
#ipsh3[data-ipsh3-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-footer,
html[data-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-header,
html[data-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-footer,
body.dark dialog.ip-demo-rf-dialog .ip-rf-header,
body.dark dialog.ip-demo-rf-dialog .ip-rf-footer{background:#172033!important;color:#f8fafc!important}
#ipsh3[data-ipsh3-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-header h3,
html[data-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-header h3,
body.dark dialog.ip-demo-rf-dialog .ip-rf-header h3{color:#f8fafc!important}

/* v10 camera theme overrides only when user preference is explicitly dark. */
html[data-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-header,body.dark dialog.ip-demo-rf-dialog .ip-rf-header,
html[data-theme="dark"] dialog.ip-demo-rf-dialog .ip-rf-footer,body.dark dialog.ip-demo-rf-dialog .ip-rf-footer{background:#172033!important;color:#e5e7eb!important}
html[data-theme="dark"] dialog.ip-demo-rf-dialog:not(.rf-landscape-active) .ip-rf-modal-body,
body.dark dialog.ip-demo-rf-dialog:not(.rf-landscape-active) .ip-rf-modal-body{background:#111827!important;color:#f8fafc!important}
html[data-theme="dark"] dialog.ip-demo-rf-dialog:not(.rf-landscape-active) .ip-rf-stack-pane,
body.dark dialog.ip-demo-rf-dialog:not(.rf-landscape-active) .ip-rf-stack-pane{background:#111827!important;color:#f8fafc!important}
