.rapid-media { display:flex; flex-direction:column; flex:1; min-height:0; gap:var(--rapid-space-2); min-width:0; }
.rapid-media__toolbar { display:flex; flex-wrap:wrap; flex-shrink:0; align-items:center; justify-content:space-between; gap:var(--rapid-space-1) var(--rapid-space-3); }
.rapid-media__navigation, .rapid-media__zoom, .rapid-media__actions { display:flex; align-items:center; flex-wrap:wrap; gap:var(--rapid-space-1); min-width:0; }
.rapid-media__position { font-family:var(--rapid-font-technical); font-size:var(--rapid-text-sm); white-space:nowrap; font-variant-numeric:tabular-nums; }
.rapid-media__viewport { position:relative; flex:1; min-height:0; min-width:0; display:grid; grid-template-rows:minmax(0,1fr); grid-template-columns:minmax(0,1fr); place-items:center; overflow:hidden; background:var(--rapid-canvas-sunk); border-radius:var(--rapid-radius-control); }
.rapid-media__viewport--image { touch-action:none; }
.rapid-media__viewport--document { touch-action:auto; }
.rapid-media__viewport:focus-visible { outline: 2px solid var(--rapid-focus); outline-offset: 2px; }
.rapid-media__viewport--pan { cursor: grab; }
.rapid-media__viewport--pan:active { cursor: grabbing; }
.rapid-media__transform { position:absolute; left:50%; top:50%; width:100%; height:100%; transform-origin:center; }
.rapid-media__transform > .rapid-image { max-height:100%; width:100%; height:100%; object-fit:contain; user-select:none; pointer-events:none; -webkit-user-drag:none; }
.rapid-media__document { width:100%; height:100%; min-height:0; min-width:0; background:var(--rapid-paper); }
.rapid-media__document > .rapid-document-preview { width:100%; height:100%; min-height:0; }
.rapid-media__document .rapid-document-preview iframe { width:100%; height:100%; min-height:0; border:0; }
@media(max-width:760px) { .rapid-media__toolbar { justify-content:flex-start; }.rapid-media__actions { margin-left:auto; } }
