70 lines
2.6 KiB
CSS
70 lines
2.6 KiB
CSS
/* Shared modal styles — imported by sidebar modals that portal to document.body.
|
|
These must be global (not scoped) since portaled elements live outside component DOM. */
|
|
|
|
.pcr-modal-backdrop {
|
|
position: fixed; top: 0; left: 0; right: 0; bottom: 0;
|
|
background: rgba(0, 0, 0, 0.6);
|
|
display: flex; align-items: center; justify-content: center;
|
|
z-index: 10001;
|
|
}
|
|
.pcr-modal {
|
|
background: #262626;
|
|
border: 1px solid #3a3a3a;
|
|
border-radius: 8px;
|
|
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
|
|
min-width: 320px; max-width: 480px;
|
|
}
|
|
.pcr-modal-header {
|
|
display: flex; align-items: center; justify-content: space-between;
|
|
padding: 16px 20px;
|
|
border-bottom: 1px solid #3a3a3a;
|
|
}
|
|
.pcr-modal-title { font-size: 16px; font-weight: 600; color: #fff; }
|
|
.pcr-modal-close {
|
|
display: flex; align-items: center; justify-content: center;
|
|
width: 28px; height: 28px; padding: 0;
|
|
background: transparent; border: none; border-radius: 4px;
|
|
color: #888; cursor: pointer;
|
|
}
|
|
.pcr-modal-close:hover { background: rgba(255, 255, 255, 0.1); color: #fff; }
|
|
.pcr-modal-close svg { width: 16px; height: 16px; }
|
|
.pcr-modal-body { padding: 20px; }
|
|
.pcr-modal-footer {
|
|
display: flex; justify-content: flex-end; gap: 10px;
|
|
padding: 16px 20px; border-top: 1px solid #3a3a3a;
|
|
}
|
|
.pcr-modal-btn {
|
|
padding: 8px 16px; border: none; border-radius: 6px;
|
|
font-size: 14px; font-weight: 500; cursor: pointer; outline: none;
|
|
}
|
|
.pcr-modal-btn:focus-visible {
|
|
outline: 2px solid var(--comfy-primary, #5dcaff);
|
|
outline-offset: 2px;
|
|
}
|
|
.pcr-modal-btn-secondary { background: #3a3a3a; color: #ccc; }
|
|
.pcr-modal-btn-secondary:hover { background: #4a4a4a; }
|
|
.pcr-modal-btn-primary { background: #973f00; color: #fff; }
|
|
.pcr-modal-btn-primary:hover, .pcr-modal-btn-primary:focus { background: #c85909; }
|
|
.pcr-modal-btn-danger { background: #8b2020; color: #fff; }
|
|
.pcr-modal-btn-danger:hover, .pcr-modal-btn-danger:focus { background: #b42a2a; }
|
|
|
|
/* Sectioned-card chrome for the upscale + inpaint options panels — each logical
|
|
group (Engine / Mode / Prompt / Settings / …) sits in a titled card, so the
|
|
two modals read identically. Global (the modals portal to body). */
|
|
.pcr-mcard {
|
|
background: #1e1e1e;
|
|
border: 1px solid #333;
|
|
border-radius: 8px;
|
|
padding: 11px 13px;
|
|
margin-bottom: 12px;
|
|
display: flex; flex-direction: column; gap: 9px;
|
|
}
|
|
.pcr-mcard:last-child { margin-bottom: 0; }
|
|
/* card children stack on the card's gap — kill the section margins that were
|
|
tuned for the old flat layout so they don't double up. */
|
|
.pcr-mcard > * { margin-top: 0 !important; }
|
|
.pcr-mcard-title {
|
|
font-size: 10.5px; font-weight: 700; letter-spacing: 0.7px;
|
|
text-transform: uppercase; color: #7c7c7c;
|
|
}
|