/** * Copyright since 2025 Mifos Initiative * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ .preview-wrapper { display: flex; flex-direction: column; gap: 1rem; padding: 0.5rem 0; } /* Submit + Cancel row at the bottom of the preview. Previous lives in the parent wizard's tab action bar. */ .preview-submit-row { display: flex; justify-content: flex-end; align-items: center; gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid #f1f5f9; button { height: 42px !important; border-radius: 10px !important; font-weight: 600 !important; padding: 0 22px !important; } &__primary { background: linear-gradient(135deg, #10b981 0%, #047857 100%) !important; --mdc-protected-button-container-color: transparent !important; --mdc-filled-button-container-color: transparent !important; color: #fff !important; box-shadow: 0 4px 12px -2px rgb(4 120 87 / 35%) !important; } } .preview-section { border: 1px solid #e2e8f0; border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 1px 4px rgb(0 0 0 / 5%); &__header { display: flex; align-items: center; gap: 8px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; padding: 0.6rem 1rem; } &__icon { font-size: 13px; color: #0ea5e9; width: 16px; text-align: center; } &__title { font-size: 0.82rem; font-weight: 700; color: #1e293b; text-transform: uppercase; letter-spacing: 0.06em; flex: 1; } &__badge { display: inline-flex; align-items: center; padding: 2px 10px; border-radius: 999px; font-size: 10px; font-weight: 700; background: #dbeafe; color: #1d4ed8; border: 1px solid #bfdbfe; text-transform: uppercase; &--digital { background: #fef3c7; color: #92400e; border-color: #fde68a; } } } .preview-body { padding: 1rem 1.25rem; } .preview-grid { display: grid; gap: 0.85rem 1.5rem; &--three { grid-template-columns: repeat(3, 1fr); @media (width <= 768px) { grid-template-columns: repeat(2, 1fr); } @media (width <= 480px) { grid-template-columns: 1fr; } } } .preview-field { display: flex; flex-direction: column; gap: 0.2rem; } .preview-label { font-size: 0.68rem; color: #94a3b8; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; } .preview-value { font-size: 0.9rem; color: #1e293b; font-weight: 500; } .preview-muted { color: #94a3b8; font-style: italic; } .preview-mono { font-family: monospace; font-size: 0.88rem; color: #334155; } .preview-badge { display: inline-block; padding: 0.15rem 0.6rem; border-radius: 12px; font-size: 0.75rem; font-weight: 600; background: #fef2f2; color: #dc2626; width: fit-content; &--yes { background: #f0fdf4; color: #15803d; } &--warn { background: #fef3c7; color: #92400e; } } // Digital facilities grid .preview-digital-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; @media (width <= 900px) { grid-template-columns: repeat(3, 1fr); } @media (width <= 600px) { grid-template-columns: repeat(2, 1fr); } } .preview-digital-card { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px; border: 1.5px solid #e2e8f0; border-radius: 8px; background: #f8fafc; transition: all 0.12s; &--on { border-color: #86efac; background: #f0fdf4; } } .preview-digital-label { font-size: 11px; font-weight: 600; color: #475569; } .preview-digital-status { font-size: 11px; font-weight: 700; color: #dc2626; &--on { color: #15803d; } } // Section badge variants .preview-section__badge--active { background: #dcfce7 !important; color: #15803d !important; border-color: #bbf7d0 !important; } // ── Dormancy Monitoring ─────────────────────────────────────────── .preview-dormancy-timeline { display: flex; align-items: flex-start; gap: 0; margin-bottom: 14px; } .preview-dorm-step { display: flex; flex-direction: column; align-items: center; gap: 6px; flex: 1; &__dot { width: 36px; height: 36px; border-radius: 50%; border: 3px solid; display: flex; align-items: center; justify-content: center; flex-shrink: 0; &--inactive { border-color: #f59e0b; background: #fffbeb; &::after { content: ''; width: 10px; height: 10px; border-radius: 50%; background: #f59e0b; } } &--dormant { border-color: #ef4444; background: #fef2f2; &::after { content: ''; width: 10px; height: 10px; border-radius: 50%; background: #ef4444; } } &--escheat { border-color: #7c3aed; background: #f5f3ff; &::after { content: ''; width: 10px; height: 10px; border-radius: 50%; background: #7c3aed; } } } &__body { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 2px; } &__label { font-size: 12px; font-weight: 700; color: #1e293b; } &__days { font-size: 10.5px; color: #64748b; line-height: 1.3; } } .preview-dorm-connector { flex: 0 0 40px; height: 3px; background: linear-gradient(90deg, #e2e8f0, #cbd5e1); margin-top: 16px; border-radius: 2px; } .preview-dorm-flags { display: flex; gap: 10px; flex-wrap: wrap; } .preview-dorm-flag { display: inline-flex; align-items: center; gap: 5px; padding: 4px 12px; border-radius: 20px; font-size: 11.5px; font-weight: 600; background: #f1f5f9; color: #94a3b8; border: 1px solid #e2e8f0; i { font-size: 11px; } &--on { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; } } .preview-table { width: 100%; margin-top: 1rem; } .margin-t { margin-top: 1em; } // ── Status of Account preview ───────────────────────────────────────────── .preview-soa-status-row { display: flex; align-items: center; gap: 10px; } .preview-soa-tile { display: inline-flex; align-items: center; gap: 8px; padding: 8px 20px; border-radius: 999px; font-size: 14px; font-weight: 700; background: #eff6ff; color: #1d4ed8; border: 2px solid #bfdbfe; i { font-size: 16px; } } .preview-soa-table-wrap { margin-top: 14px; overflow-x: auto; border-radius: 8px; border: 1px solid #e2e8f0; } .preview-soa-tbl { width: 100%; border-collapse: collapse; font-size: 13px; } .preview-soa-th { background: #f8fafc; padding: 8px 12px; text-align: left; font-weight: 600; color: #475569; border-bottom: 1px solid #e2e8f0; white-space: nowrap; } .preview-soa-td { padding: 10px 12px; border-bottom: 1px solid #f1f5f9; color: #0f172a; vertical-align: middle; } .preview-soa-tr--primary { background: #f0f9ff; .preview-soa-td { font-weight: 600; } } .preview-soa-primary-tag { display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px; font-size: 10px; font-weight: 700; background: #dbeafe; color: #1d4ed8; border: 1px solid #bfdbfe; vertical-align: middle; }