.image-preview,.library-preview{display:block;position:relative;height:auto;aspect-ratio:4/3;min-height:0;overflow:hidden;background:#fff;cursor:zoom-in}
.image-preview>img,.library-preview>img{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);max-height:none;max-width:none;object-fit:contain;object-position:center}
.image-preview .status{z-index:1;pointer-events:none;background:#fffffff0}
.enlarge-hint{position:absolute;bottom:8px;right:8px;background:#fffffff0;border-radius:5px;padding:4px 7px;font-size:11px;color:#143044;pointer-events:none}
.image-preview:focus-visible{outline:3px solid #0397ba;outline-offset:-3px}
.library-hidden{opacity:1}.library-hidden .library-visible{color:#637783}
.card-editor{grid-column:1/-1;scroll-margin-top:110px}.card-editor .section-heading label{min-width:200px;margin:0}
.card-slots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.card-slot{display:flex;flex-direction:column;gap:10px;min-width:0;border:1px solid #dae3e8;border-radius:10px;padding:12px}.card-slot .image-preview{padding:0;border:0;width:100%;border-radius:6px}.card-slot>strong{font-size:12px}.card-slot .secondary{padding:9px 5px}.empty-slot{aspect-ratio:4/3;display:grid;place-items:center;background:#f4f7f9;border:1px dashed #b9c8d1;border-radius:6px;color:#657b88;font-size:12px}.slot-actions{display:flex;gap:2px;flex-wrap:wrap}.slot-actions button{padding:5px;font-size:11px}
dialog.image-viewer{width:min(1100px,94vw);max-width:94vw;max-height:94dvh;padding:18px;overflow:hidden;background:white}.image-viewer header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.image-viewer h2{margin:0;font-size:18px}.image-viewer p{margin:4px 0;color:#607989;font-size:12px}.image-viewer>img{display:block;width:100%;height:min(76dvh,850px);object-fit:contain;object-position:center}.image-viewer::backdrop{background:#081d30bf}.image-viewer button{flex-shrink:0}
@media(max-width:1000px){.card-slots{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.card-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.card-editor .section-heading{display:block}.card-editor .section-heading label{margin-top:12px}dialog.image-viewer{padding:12px}.image-viewer>img{height:70dvh}}
