/* Image generation dialog (production-image-gen.js), shared by every replica */
.pi-dialog { position: fixed; inset: 0; z-index: 1000; background: rgba(0, 0, 0, .55); display: grid; place-items: center; }
.pi-card { width: min(520px, calc(100vw - 32px)); max-height: calc(100vh - 48px); overflow: auto; background: #18181c; border: 1px solid #2c2c33; border-radius: 16px; color: #eee; font: 14px/1.5 Inter, system-ui, sans-serif; }
.pi-head { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; border-bottom: 1px solid #2c2c33; font-size: 15px; }
.pi-x { background: none; border: 0; color: #aaa; font-size: 20px; cursor: pointer; }
.pi-body { padding: 16px 18px 18px; display: grid; gap: 12px; }
.pi-body label { display: grid; gap: 6px; font-size: 12px; color: #9a9aa3; }
.pi-body select, .pi-body textarea { background: #101013; color: #eee; border: 1px solid #33333b; border-radius: 10px; padding: 8px 10px; font: inherit; font-size: 14px; }
.pi-price { margin: 0; color: #c9c9d1; font-size: 13px; }
.pi-actions { display: flex; gap: 10px; }
.pi-actions button { border: 0; border-radius: 999px; padding: 9px 18px; font: 600 14px/1 Inter, system-ui, sans-serif; cursor: pointer; background: #f15a24; color: #fff; }
.pi-actions .pi-edit { background: #2a2a31; color: #ddd; }
.pi-status { margin: 0; font-size: 13px; color: #b9b9c1; min-height: 1em; } .pi-status[data-kind="error"] { color: #ff8a7a; } .pi-status[data-kind="ok"] { color: #7fd38a; }
.pi-result img { width: 100%; border-radius: 12px; display: block; }
.pi-download { display: inline-block; margin-top: 10px; color: #fff; background: #2a2a31; border-radius: 999px; padding: 7px 14px; text-decoration: none; font-size: 13px; }
