/* Keep actual interfaces flat and readable; expand them without leaving the store. */
#content .product-visual{padding:58px 22px 54px;min-height:320px;background:#f6f6f7}
#content .product-visual img{display:block;width:100%;height:auto;transform:none;border:1px solid #dddfe4;border-radius:8px;box-shadow:0 12px 28px #191b200a}
#content .product-visual .visual-label{top:19px;left:22px;padding:0;background:none;font-size:var(--type-label,14px);font-weight:650;color:var(--ink)}
.visual-caption{position:absolute;bottom:18px;left:22px;right:22px;font-size:var(--type-caption,13px);color:var(--muted);line-height:1.6}
.screen-view-link{min-height:44px;padding:4px 0;border:0;background:transparent;font:inherit;font-size:var(--type-label,14px);font-weight:650;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:4px}
.screen-view-link:hover{color:var(--red)}
.program-screen-gallery{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}
.program-screen-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 17px;font-size:var(--type-caption,13px);line-height:1.6;border-bottom:1px solid var(--line)}
.program-screen-heading>span:first-child{font-weight:650;color:var(--ink)}
.program-screen-heading>span:last-child{color:var(--muted)}
.program-screen-main{display:block;position:relative;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#f7f7f9;overflow:hidden;cursor:zoom-in}
.program-screen-main img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.screen-enlarge{position:absolute;bottom:12px;right:12px;border:1px solid #dedfe3;border-radius:6px;padding:8px 12px;background:#fff;color:var(--ink);font-size:var(--type-caption,13px);font-weight:650;box-shadow:0 2px 8px #0000000a}
.program-screen-options{display:flex;gap:8px;padding:12px 15px;border-top:1px solid var(--line)}
.program-screen-options button{min-height:44px;flex:1;padding:9px 12px;border:1px solid #dddfe4;border-radius:7px;background:#fff;font:inherit;font-size:var(--type-label,14px);line-height:1.5;color:var(--ink);cursor:pointer}
.program-screen-options button[aria-pressed=true]{border-color:var(--red);color:#b62d27;background:#fff7f6;font-weight:650}
#content .program-screen-gallery .program-screen-note{max-width:none;margin:0;padding:0 17px 15px;font-size:var(--type-caption,13px);line-height:1.75;color:var(--muted)}
.program-screen-open{overflow:hidden}
.program-screen-dialog{box-sizing:border-box;width:min(1280px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:20px;border:1px solid #dfe0e4;border-radius:14px;color:var(--ink,#191b20);background:#fff;box-shadow:0 24px 90px #00000030;font-family:var(--font,sans-serif);overflow:auto}
.program-screen-dialog::backdrop{background:#11131ba6}
.screen-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:18px}
.screen-dialog-header p{margin:0 0 4px;font-size:var(--type-caption,13px);color:var(--muted)}
.screen-dialog-header h2{font-size:var(--type-subheading,20px);line-height:1.5;margin:0}
.screen-dialog-close{flex-shrink:0;min-height:44px;padding:8px 14px;border:1px solid #dddfe4;border-radius:7px;background:#fff;font:inherit;font-size:var(--type-control,15px);cursor:pointer}
#program-screen-description{margin:12px 0 15px;font-size:var(--type-label,14px);line-height:1.7;color:var(--muted)}
.screen-dialog-viewport{max-height:calc(100dvh - 235px);overflow:auto;overscroll-behavior:contain;border:1px solid #e0e1e5;border-radius:8px;background:#f7f7f9;touch-action:pan-x pan-y pinch-zoom}
.screen-dialog-viewport img{display:block;width:100%;max-width:100%;height:auto}
.program-screen-dialog.is-zoomed .screen-dialog-viewport img{width:1280px;max-width:none}
.screen-dialog-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:var(--type-label,14px)}
.screen-dialog-tools button{min-height:44px;padding:9px 14px;border:1px solid #dddfe4;border-radius:7px;background:#fff;font:inherit;color:inherit;cursor:pointer}
.screen-dialog-tools a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:4px;line-height:1.6}
.screen-view-link:focus-visible,.program-screen-main:focus-visible,.program-screen-options button:focus-visible,.program-screen-dialog :is(button,a):focus-visible{outline:3px solid #bd3028;outline-offset:3px}
@media(max-width:760px){
  #content .product-visual{min-height:0;padding:50px 12px 47px}
  #content .product-visual .visual-label{left:15px;top:15px}
  .visual-caption{left:15px;right:15px;bottom:13px;font-size:var(--type-caption,13px)}
  .program-screen-heading{padding:12px;font-size:12px}
  .program-screen-options{padding:10px;gap:7px}
  .program-screen-options button{padding:8px;font-size:13px}
  .screen-enlarge{padding:6px 9px;bottom:8px;right:8px;font-size:12px}
  #content .program-screen-gallery .program-screen-note{padding:0 12px 13px}
  .program-screen-dialog{width:calc(100vw - 16px);padding:14px;max-height:calc(100dvh - 16px)}
  .screen-dialog-header h2{font-size:18px}
  .screen-dialog-header{gap:10px}
  .screen-dialog-close{padding:8px 10px;font-size:14px}
  .screen-dialog-viewport{max-height:calc(100dvh - 280px)}
  .screen-dialog-tools{gap:7px;margin-top:10px}
}
/* Preserve the full wide dashboard, including the navigation and relationship chart. */
[data-screen-gallery="ieon"] .program-screen-main{aspect-ratio:50/21}
[data-screen-gallery="ieon"] .program-screen-main img{object-fit:contain}
