/* Final enterprise containment contract. Loaded last on complex workspaces. */
*, *::before, *::after { box-sizing: border-box; }
html, body { width: 100%; max-width: 100%; }
img, video, canvas, iframe, svg, button, input, select, textarea { max-width: 100%; }
#main-dashboard, #main-dashboard > main, .workspace-panel, .core-center, .project-shell,
.project-grid, .project-detail-panel, .studio-grid, .studio-editor, .studio-output,
.repair-grid, .design-grid, .media-grid, .app-topbar-main, .workspace-nav, .system-controls {
  min-width: 0; min-height: 0;
}
.workspace-nav, .system-controls { overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; }
.workspace-nav > *, .system-controls > * { flex: 0 0 auto; }
.workspace-panel[aria-hidden="true"] { visibility: hidden; pointer-events: none; }
.workspace-panel[aria-hidden="false"] { visibility: visible; }
.project-grid > *, .studio-grid > *, .repair-grid > *, .design-grid > *, .media-grid > * { min-width: 0; max-width: 100%; }
.project-heading, .core-hero, .studio-project-bar, .media-header { flex-wrap: wrap; }
.project-modal, dialog { max-width: calc(100vw - 24px); max-height: calc(100vh - 24px); }

.xentra-media-studio { width: 100vw; height: 100vh; overflow: hidden; }
.xentra-media-studio .app-shell {
  width: 100%; height: 100%; min-width: 0; min-height: 0; overflow: hidden;
  display: grid; grid-template-rows: auto minmax(0, 1fr) auto;
}
.xentra-media-studio .app-header {
  position: relative; z-index: 30; min-width: 0; max-width: 100vw;
  display: grid; grid-template-columns: auto minmax(180px, 1fr) auto minmax(280px, 2fr);
  align-items: center; gap: 8px; overflow: hidden;
}
.xentra-media-studio .brand, .xentra-media-studio .project-control,
.xentra-media-studio .history-controls, .xentra-media-studio .header-actions { min-width: 0; }
.xentra-media-studio .header-actions {
  display: flex; align-items: center; gap: 6px; overflow-x: auto; overflow-y: hidden;
  overscroll-behavior-x: contain; scrollbar-width: thin; padding-bottom: 3px;
}
.xentra-media-studio .header-actions > * { flex: 0 0 auto; }
.xentra-media-studio .editing-area {
  position: relative; z-index: 1; min-width: 0; min-height: 0; max-width: 100vw;
  overflow: hidden; display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(320px, 1fr) minmax(250px, 320px);
}
.xentra-media-studio .editing-area > * { min-width: 0; min-height: 0; max-width: 100%; overflow: auto; }
.xentra-media-studio .monitor-column, .xentra-media-studio .preview-stage { min-width: 0; min-height: 0; overflow: hidden; }
.xentra-media-studio .transport, .xentra-media-studio .timeline-toolbar { min-width: 0; overflow-x: auto; overflow-y: hidden; }
.xentra-media-studio .transport > * { flex: 0 0 auto; }
.xentra-media-studio .timeline-dock { position: relative; z-index: 2; min-width: 0; max-width: 100vw; overflow: hidden; }
.xentra-media-studio .timeline-body, .xentra-media-studio .timeline-scroll { min-width: 0; overflow: auto; }
.xentra-media-studio .creation-workspace:not([hidden]) { position: fixed; inset: 0; z-index: 80; max-width: 100vw; max-height: 100vh; overflow: auto; }
.xentra-media-studio dialog { width: min(960px, calc(100vw - 24px)); max-height: calc(100vh - 24px); overflow: auto; }
.xentra-media-studio dialog::backdrop { background: rgba(1, 4, 8, .76); backdrop-filter: blur(8px); }
.xentra-media-studio .enterprise-workbench, .xentra-media-studio .enterprise-workbench > *,
.xentra-media-studio .workspace-body, .xentra-media-studio .workspace-body > * { min-width: 0; max-width: 100%; }

@media (max-width: 1180px) {
  .xentra-media-studio .app-header { grid-template-columns: auto minmax(160px, 1fr) auto; }
  .xentra-media-studio .header-actions { grid-column: 1 / -1; }
  .xentra-media-studio .editing-area { grid-template-columns: minmax(200px, 240px) minmax(300px, 1fr); }
  .xentra-media-studio .right-panel { position: absolute; inset: 0 0 0 auto; z-index: 20; width: min(340px, 88vw); box-shadow: -20px 0 50px rgba(0,0,0,.55); }
  .xentra-media-studio .right-panel:has(#clip-inspector[hidden]) { display: none; }
}
@media (max-width: 760px) {
  .xentra-media-studio { height: auto; min-height: 100vh; overflow: auto; }
  .xentra-media-studio .app-shell { height: auto; min-height: 100vh; display: block; overflow: visible; }
  .xentra-media-studio .app-header { position: sticky; top: 0; grid-template-columns: 1fr auto; max-height: none; }
  .xentra-media-studio .project-control, .xentra-media-studio .header-actions { grid-column: 1 / -1; }
  .xentra-media-studio .history-controls { grid-row: 1; grid-column: 2; }
  .xentra-media-studio .editing-area { display: block; overflow: visible; }
  .xentra-media-studio .left-panel { max-height: 42vh; }
  .xentra-media-studio .monitor-column { min-height: 52vh; }
  .xentra-media-studio .right-panel { position: relative; inset: auto; width: 100%; max-height: 52vh; }
  .xentra-media-studio .timeline-dock { min-height: 300px; }
}
@supports not selector(:has(*)) {
  @media (max-width: 1180px) { .xentra-media-studio .right-panel { position: relative; width: 100%; } }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
}
