/* MainZoglin v102: isolate navigation layout and responsive design previews.
   The v59/v64 styles were fixed to select .sidebar rather than every <aside>. */
.dashboard-body .app-body,
.dashboard-body .workspace,
.dashboard-body .mz101-ticket-page,
.dashboard-body .mz101-ticket-form,
.dashboard-body .studio-layout,
.dashboard-body .welcome-layout { min-width:0; max-width:100%; }
.dashboard-body .mz101-ticket-page { width:100%; }
.dashboard-body .mz101-ticket-editor-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px, .8fr);
  gap:clamp(18px,1.6vw,26px);
  width:100%;
  align-items:start;
}
.dashboard-body .mz101-ticket-editor-grid > *,
.dashboard-body .studio-layout > *,
.dashboard-body .welcome-layout > * { min-width:0; max-width:100%; }
/* Never let a non-navigation <aside> inherit the navigation's fixed sizing. */
.dashboard-body aside.mz101-preview-column,
.dashboard-body aside.studio-preview-container,
.dashboard-body aside.welcome-preview-wrap,
.dashboard-body aside.helper-history {
  width:100%; min-width:0; max-width:100%; flex:initial;
  height:auto; max-height:none; border-right:0;
  overflow:visible; padding:0; background:transparent;
}
.dashboard-body aside.mz101-preview-column {
  position:sticky; top:86px; align-self:start;
  display:block; border:0;
}
.dashboard-body .mz101-preview-shell { width:100%; min-width:0; }
.dashboard-body .mz101-preview-header { flex-wrap:wrap; }
.dashboard-body .mz102-preview-scroll { width:100%; max-width:100%; min-width:0; overflow-x:auto; overflow-y:hidden; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#69559f #141925; border-radius:12px; }
.dashboard-body .mz101-preview-viewport {
  display:block; width:100%; max-width:100%; min-width:0;
  margin-inline:auto; container-type:inline-size;
}
.dashboard-body .mz101-preview-viewport.mobile { width:min(100%, 375px); }
.dashboard-body .mz101-discord-message { width:100%; min-width:0; }
.dashboard-body .mz101-message-body { min-width:0; overflow-wrap:break-word; }
.dashboard-body .mz101-discord-embed { min-width:0; width:min(100%, 520px); }
.dashboard-body .mz101-discord-top span { min-width:0; overflow-wrap:anywhere; }
.dashboard-body .mz101-preview-footer { flex-wrap:wrap; }
.dashboard-body .mz101-preview-footer > span { flex:1 1 180px; }
.dashboard-body .mz101-device-actions { flex:0 0 auto; }
/* Robust cards/controls in the other design workspaces. */
.dashboard-body .studio-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,.8fr);gap:22px;align-items:start; }
.dashboard-body .studio-layout .studio-preview-container { position:sticky;top:86px;padding:22px;background:linear-gradient(160deg,#1b2132,#171b2a);border:1px solid #4a3c72;border-radius:14px; }
.dashboard-body .studio-layout .studio-message { min-width:0;overflow-wrap:break-word; }
.dashboard-body .studio-layout .studio-embed { max-width:100%;min-width:0;overflow-wrap:anywhere; }
.dashboard-body .welcome-layout { grid-template-columns:minmax(0,1.25fr) minmax(400px,.85fr);gap:22px; }
.dashboard-body .welcome-layout .welcome-preview-wrap { position:relative;top:auto; }
.dashboard-body .welcome-layout .preview-sticky { width:100%;min-width:0;max-width:100%; }
.dashboard-body .welcome-layout .preview-card-art { min-width:0;flex-wrap:wrap;overflow-wrap:anywhere; }
.dashboard-body .welcome-layout .fake-avatar { flex:none; }
.dashboard-body .grid2 > *, .dashboard-body .grid3 > *,
.dashboard-body .design-grid > *, .dashboard-body .ticket-service-body > * { min-width:0; }
.dashboard-body .mz101-ticket-fields input,
.dashboard-body .mz101-ticket-fields select,
.dashboard-body .mz101-ticket-fields textarea { max-width:100%; }
/* Break onto full-width canvases BEFORE any 250px-squeezed preview can appear. */
@media(max-width:1399px) {
  .dashboard-body .mz101-ticket-editor-grid { grid-template-columns:minmax(0,1fr); }
  .dashboard-body aside.mz101-preview-column { grid-row:1; position:static;top:auto; }
  .dashboard-body .mz101-preview-viewport { max-width:700px; margin-inline:auto; }
  .dashboard-body .mz101-preview-viewport.mobile { max-width:375px; }
  .dashboard-body .studio-layout, .dashboard-body .welcome-layout { grid-template-columns:minmax(0,1fr); }
  .dashboard-body .studio-layout .studio-preview-container { position:static;top:auto; }
  .dashboard-body .welcome-layout .preview-sticky { position:static;top:auto; }
}
@media(max-width:850px) {
  .dashboard-body .mz101-preview-shell { padding:clamp(12px,3vw,20px)!important; }
  .dashboard-body .mz101-preview-viewport:not(.mobile) { width:560px; max-width:none; margin-inline:0; }
  .dashboard-body .mz101-preview-viewport.mobile { width:min(100%,375px); max-width:375px; }
  .dashboard-body .welcome-layout .preview-card-art { padding:12px; }
}
@media(max-width:540px) {
  .dashboard-body .mz101-ticket-fields .grid2,
  .dashboard-body .mz101-ticket-fields .grid3,
  .dashboard-body .mz101-ticket-fields .design-grid,
  .dashboard-body .studio-layout .grid2,
  .dashboard-body .studio-layout .grid3,
  .dashboard-body .welcome-layout .grid2 { display:grid;grid-template-columns:minmax(0,1fr); }
  .dashboard-body .mz101-discord-message { padding:13px 9px 16px;gap:8px; }
  .dashboard-body .mz101-discord-avatar { width:30px;height:30px; }
  .dashboard-body .mz101-discord-embed { padding:10px; }
  .dashboard-body .mz101-preview-tabs button { font-size:11px; }
  .dashboard-body .mz101-device-actions { width:100%; }
  .dashboard-body .mz101-device-actions button { flex:1; }
}
