/* ============================================================ page-auto-import.css — Turn A: token-ize inline styles group: monitor · accent: --momo-warm-caramel ============================================================ */ .auto-import-page { background: var(--momo-surface-1); color: var(--momo-ink-primary); padding-bottom: var(--momo-space-12); } /* ---------- Card 通用覆寫(去紫漸層)---------- */ .auto-import-page .card { border: 1px solid var(--momo-border-light); border-radius: var(--momo-radius-md); box-shadow: var(--momo-shadow-soft); margin-bottom: var(--momo-space-5); background: var(--momo-surface-0); transition: box-shadow 0.18s ease; } .auto-import-page .card:hover { box-shadow: var(--momo-shadow-deep); } .auto-import-page .card-header { background: var(--momo-surface-2); color: var(--momo-ink-primary); border-bottom: 1px solid var(--momo-border-light); border-radius: var(--momo-radius-md) var(--momo-radius-md) 0 0 !important; padding: var(--momo-space-4) var(--momo-space-5); display: flex; align-items: center; gap: var(--momo-space-2); } .auto-import-page .card-header h5 { margin: 0; font-family: var(--momo-font-heading); font-weight: var(--momo-font-semibold); font-size: var(--momo-text-base); color: var(--momo-ink-primary); } .auto-import-page .card-header i { color: var(--momo-warm-caramel-deep); } .auto-import-page .card-body { padding: var(--momo-space-5); } /* ---------- Buttons (去紫色漸層) ---------- */ .auto-import-page .btn-primary { background: var(--momo-warm-caramel); border-color: var(--momo-warm-caramel); color: var(--momo-on-accent, #fff8ef); border-radius: var(--momo-radius-sm); padding: var(--momo-space-2) var(--momo-space-4); font-weight: var(--momo-font-semibold); font-size: var(--momo-text-sm); box-shadow: none; } .auto-import-page .btn-primary:hover, .auto-import-page .btn-primary:focus { background: var(--momo-warm-caramel-deep); border-color: var(--momo-warm-caramel-deep); color: var(--momo-on-accent, #fff8ef); transform: none; box-shadow: var(--momo-shadow-soft); } .auto-import-page .btn-success { background: var(--momo-warm-olive); border-color: var(--momo-warm-olive); color: var(--momo-on-accent, #fff8ef); border-radius: var(--momo-radius-sm); padding: var(--momo-space-2) var(--momo-space-4); font-weight: var(--momo-font-semibold); font-size: var(--momo-text-sm); box-shadow: none; } .auto-import-page .btn-success:hover, .auto-import-page .btn-success:focus { background: var(--momo-warm-olive-deep); border-color: var(--momo-warm-olive-deep); color: var(--momo-on-accent, #fff8ef); transform: none; box-shadow: var(--momo-shadow-soft); } .auto-import-page .btn-secondary { background: var(--momo-surface-0); border-color: var(--momo-border-strong); color: var(--momo-ink-secondary); border-radius: var(--momo-radius-sm); padding: var(--momo-space-2) var(--momo-space-4); font-weight: var(--momo-font-medium); font-size: var(--momo-text-sm); } .auto-import-page .btn-secondary:hover { background: var(--momo-surface-2); border-color: var(--momo-warm-caramel); color: var(--momo-warm-caramel-deep); } .auto-import-page .btn-warning { background: var(--momo-warm-honey); border-color: var(--momo-warm-honey); color: var(--momo-on-accent, #fff8ef); border-radius: var(--momo-radius-sm); font-weight: var(--momo-font-medium); } .auto-import-page .btn-warning:hover { background: var(--momo-warm-honey-deep); border-color: var(--momo-warm-honey-deep); color: var(--momo-on-accent, #fff8ef); } .auto-import-page .btn-outline-danger { border-color: var(--momo-warm-honey-deep); color: var(--momo-warm-honey-deep); background: var(--momo-surface-0); } .auto-import-page .btn-outline-danger:hover { background: var(--momo-warm-honey-deep); border-color: var(--momo-warm-honey-deep); color: var(--momo-on-accent, #fff8ef); } /* ---------- Form ---------- */ .auto-import-page .form-label { font-weight: var(--momo-font-semibold); color: var(--momo-ink-secondary); font-size: var(--momo-text-sm); margin-bottom: var(--momo-space-2); } .auto-import-page .form-control { border: 1px solid var(--momo-border); border-radius: var(--momo-radius-sm); padding: var(--momo-space-2) var(--momo-space-3); font-size: var(--momo-text-sm); background: var(--momo-surface-0); color: var(--momo-ink-primary); transition: border-color 0.16s ease, box-shadow 0.16s ease; } .auto-import-page .form-control:focus { border-color: var(--momo-warm-caramel); box-shadow: 0 0 0 3px var(--momo-warm-caramel-soft); } .auto-import-page .form-control::placeholder { color: var(--momo-ink-tertiary); } .auto-import-page small.text-muted { color: var(--momo-ink-tertiary) !important; font-size: var(--momo-text-xs); } /* ---------- Alerts ---------- */ .auto-import-page .alert { border-radius: var(--momo-radius-sm); padding: var(--momo-space-3) var(--momo-space-4); margin-bottom: var(--momo-space-4); font-size: var(--momo-text-sm); border: 1px solid transparent; } .auto-import-page .alert-light, .auto-import-page .alert-light.border { background: var(--momo-surface-2); border-color: var(--momo-border-light); color: var(--momo-ink-secondary); } .auto-import-page .alert-info { background: var(--momo-warm-caramel-soft); border-color: var(--momo-warm-caramel); color: var(--momo-ink-primary); } .auto-import-page .alert-info h6 { font-weight: var(--momo-font-semibold); color: var(--momo-warm-caramel-deep); } .auto-import-page .alert-success { background: var(--momo-warm-olive-soft); border-color: var(--momo-warm-olive); color: var(--momo-warm-olive-deep); } .auto-import-page .alert-warning { background: var(--momo-warm-honey-soft); border-color: var(--momo-warm-honey); color: var(--momo-warm-honey-deep); } .auto-import-page .alert-danger { background: rgba(193, 77, 77, 0.1); border-color: rgba(193, 77, 77, 0.5); color: #8a3a3a; } .auto-import-page .alert code { background: var(--momo-surface-0); border: 1px solid var(--momo-border-light); padding: 0.1em 0.4em; border-radius: var(--momo-radius-xs); font-family: var(--momo-font-mono); font-size: 0.92em; color: var(--momo-warm-mahogany); } /* ---------- Table ---------- */ .auto-import-page .table { background: transparent; margin-bottom: 0; font-size: var(--momo-text-sm); } .auto-import-page .table thead th { background: var(--momo-surface-2); border-bottom: 1px solid var(--momo-border); color: var(--momo-ink-secondary); font-weight: var(--momo-font-semibold); text-transform: uppercase; font-size: var(--momo-text-xs); letter-spacing: 0.04em; padding: var(--momo-space-3); white-space: nowrap; } .auto-import-page .table tbody td { vertical-align: middle; padding: var(--momo-space-3); border-bottom: 1px solid var(--momo-border-light); white-space: nowrap; color: var(--momo-ink-primary); } .auto-import-page .table tbody tr:hover td { background: var(--momo-surface-1); } .auto-import-page .table tbody tr:last-child td { border-bottom: none; } .auto-import-page .table tbody td.error-cell { white-space: normal; max-width: 250px; word-break: break-word; } .auto-import-page .table tbody td.error-cell small { color: var(--momo-warm-honey-deep) !important; font-family: var(--momo-font-mono); font-size: var(--momo-text-xs); } /* ---------- Badges ---------- */ .auto-import-page .badge { padding: 0.3em 0.7em; font-weight: var(--momo-font-semibold); border-radius: var(--momo-radius-pill); font-size: var(--momo-text-xs); } .auto-import-page .badge-pending { background: var(--momo-warm-honey-soft); color: var(--momo-warm-honey-deep); } .auto-import-page .badge-downloading { background: var(--momo-warm-caramel-soft); color: var(--momo-warm-caramel-deep); } .auto-import-page .badge-importing { background: var(--momo-warm-mahogany-soft); color: var(--momo-warm-mahogany); } .auto-import-page .badge-completed { background: var(--momo-warm-olive-soft); color: var(--momo-warm-olive-deep); } .auto-import-page .badge-failed { background: rgba(193, 77, 77, 0.15); color: #8a3a3a; } .auto-import-page .badge.bg-success { background: var(--momo-warm-olive) !important; color: var(--momo-on-accent, #fff8ef) !important; } .auto-import-page .badge.bg-secondary { background: var(--momo-surface-2) !important; color: var(--momo-ink-secondary) !important; border: 1px solid var(--momo-border) !important; } /* ---------- Progress ---------- */ .auto-import-page .progress { height: 6px; border-radius: var(--momo-radius-pill); background: var(--momo-surface-2); overflow: hidden; } .auto-import-page .progress-bar { background: var(--momo-warm-caramel); transition: width 0.3s ease; } /* ---------- Empty state ---------- */ .auto-import-page .empty-state { text-align: center; padding: var(--momo-space-12) var(--momo-space-4); color: var(--momo-ink-tertiary); } .auto-import-page .empty-state i { font-size: 2.5rem; margin-bottom: var(--momo-space-3); opacity: 0.4; color: var(--momo-warm-caramel); } .auto-import-page .empty-state p { margin: 0; font-size: var(--momo-text-base); font-weight: var(--momo-font-medium); } /* ---------- Spinner ---------- */ .auto-import-page .spinner-border.text-primary { color: var(--momo-warm-caramel) !important; } /* ---------- Page header ---------- */ .auto-import-page h2 { font-family: var(--momo-font-heading); font-weight: var(--momo-font-bold); font-size: var(--momo-text-2xl); color: var(--momo-ink-primary); margin: 0 0 var(--momo-space-2) 0; letter-spacing: 0; display: flex; align-items: center; gap: var(--momo-space-3); } .auto-import-page h2 i { color: var(--momo-warm-caramel); font-size: 0.85em; } .auto-import-page h2 + .text-muted { color: var(--momo-ink-tertiary) !important; font-size: var(--momo-text-sm); }