feat: add campaign copying scheduling and residual handling
This commit is contained in:
@@ -2781,3 +2781,68 @@
|
||||
animation: none;
|
||||
}
|
||||
}
|
||||
.campaign-copy-dialog { width: min(760px, calc(100vw - 32px)); }
|
||||
.campaign-copy-form { display: grid; gap: 16px; }
|
||||
.campaign-copy-form > p { margin: 0; }
|
||||
.campaign-copy-identity { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .65fr); gap: 12px; }
|
||||
.campaign-copy-identity input { width: 100%; }
|
||||
.campaign-copy-options { border: var(--border-line); }
|
||||
.campaign-copy-option { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; min-height: 66px; padding: 10px 12px; border-bottom: var(--border-line); }
|
||||
.campaign-copy-option:last-child { border-bottom: 0; }
|
||||
.campaign-copy-option strong, .campaign-copy-option small { display: block; }
|
||||
.campaign-copy-option small { margin-top: 3px; color: var(--muted); line-height: 1.35; }
|
||||
.campaign-copy-option.is-disabled { opacity: .62; }
|
||||
|
||||
@media (max-width: 720px) {
|
||||
.campaign-copy-identity { grid-template-columns: 1fr; }
|
||||
.campaign-copy-option { grid-template-columns: 1fr; }
|
||||
}
|
||||
|
||||
.campaign-content-library-dialog { width: min(880px, calc(100vw - 32px)); }
|
||||
.campaign-content-save-dialog { width: min(680px, calc(100vw - 32px)); }
|
||||
.campaign-content-library, .campaign-content-save-form { display: grid; gap: 14px; }
|
||||
.campaign-content-library input, .campaign-content-save-form input, .campaign-content-save-form textarea { width: 100%; }
|
||||
.campaign-content-library-list { display: grid; max-height: min(56vh, 560px); overflow: auto; border: var(--border-line); }
|
||||
.campaign-content-library-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 12px; border-bottom: var(--border-line); }
|
||||
.campaign-content-library-item:last-child { border-bottom: 0; }
|
||||
.campaign-content-library-item:hover { background: var(--hover-bg); }
|
||||
.campaign-content-library-item-copy { min-width: 0; }
|
||||
.campaign-content-library-item-copy p { margin: 4px 0; }
|
||||
.campaign-content-library-item-copy small { color: var(--muted); }
|
||||
.campaign-content-library-item-title { display: flex; align-items: baseline; gap: 8px; }
|
||||
.campaign-content-library-item-title span { color: var(--muted); font-size: var(--font-size-sm); }
|
||||
.campaign-content-library-item-actions { justify-content: flex-end; }
|
||||
.campaign-content-save-identity { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: end; }
|
||||
.campaign-content-save-form > p { margin: 0; }
|
||||
|
||||
@media (max-width: 720px) {
|
||||
.campaign-content-library-item, .campaign-content-save-identity { grid-template-columns: 1fr; }
|
||||
.campaign-content-library-item-actions { justify-content: flex-start; }
|
||||
}
|
||||
|
||||
.campaign-schedule-dialog { width: min(760px, calc(100vw - 32px)); }
|
||||
.campaign-schedule-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 12px; }
|
||||
.campaign-schedule-interval { display: grid; grid-template-columns: 88px minmax(0, 1fr); align-items: center; gap: 8px; }
|
||||
.campaign-schedule-list { display: grid; gap: 4px; }
|
||||
.campaign-schedule-row { display: flex; align-items: center; justify-content: space-between; min-height: 52px; gap: 12px; padding: 8px; border-radius: 4px; }
|
||||
.campaign-schedule-row:hover { background: var(--hover-bg); }
|
||||
.campaign-schedule-main { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; min-width: 0; }
|
||||
.campaign-schedule-main strong { flex-basis: 100%; }
|
||||
.campaign-schedule-main span { color: var(--muted); font-size: var(--font-size-sm); }
|
||||
.campaign-schedule-main .danger-text { color: var(--danger); }
|
||||
|
||||
@media (max-width: 720px) {
|
||||
.campaign-schedule-form { grid-template-columns: minmax(0, 1fr); }
|
||||
.campaign-schedule-row { align-items: flex-start; flex-direction: column; }
|
||||
}
|
||||
|
||||
.campaign-residual-file-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 12px; }
|
||||
.campaign-residual-file-wide { grid-column: 1 / -1; }
|
||||
.campaign-residual-file-form input,
|
||||
.campaign-residual-file-form select,
|
||||
.campaign-residual-file-form textarea { width: 100%; }
|
||||
|
||||
@media (max-width: 720px) {
|
||||
.campaign-residual-file-form { grid-template-columns: minmax(0, 1fr); }
|
||||
.campaign-residual-file-wide { grid-column: auto; }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user