/* Карточка гражданина и периоды */

.registration-person { overflow: hidden; border: 1px solid var(--registration-border); border-radius: 8px; background: #fff; box-shadow: 0 8px 24px rgba(37,49,60,.06); }
.registration-person-header { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding: 22px 24px; border-bottom: 1px solid #e6edf2; }
.registration-person-header h3 { margin: 0 0 5px; font-size: 22px; overflow-wrap: anywhere; }
.registration-person-header p { margin: 0; color: var(--registration-muted); font-size: 12px; }
.registration-person-back { margin-bottom: 14px; }
.registration-person-view { padding: 20px 24px 26px; }
.registration-person-statuses { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-bottom: 17px; padding: 11px 13px; border: 1px solid #dce6ed; border-radius: 6px; background: #f7fafc; }
.registration-person-statuses .registration-attention { margin-left: auto; }
.registration-status_primary { padding: 6px 10px; font-size: 11px; }
.registration-person-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.registration-info-card { padding: 18px; border: 1px solid #dce5ec; border-radius: 6px; }
.registration-info-card h4 { margin: 0 0 15px; padding-bottom: 10px; border-bottom: 1px solid #e8edf1; color: #334657; font-size: 14px; }
.registration-info-card dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; margin: 0; }
.registration-info-card dt { margin-bottom: 3px; color: var(--registration-muted); font-size: 10px; font-weight: 600; text-transform: uppercase; }
.registration-info-card dd { margin: 0; color: var(--registration-text); font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.registration-info-card__wide { grid-column: 1 / -1; }
.registration-period-section { margin-top: 16px; border: 1px solid #dce5ec; border-radius: 6px; }
.registration-period-section__header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 16px; border-bottom: 1px solid #e6edf2; background: #f8fafc; }
.registration-period-section__header h4 { margin: 0; font-size: 14px; }
.registration-period-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.registration-period-actions .registration-button { min-height: 32px; padding: 6px 9px; font-size: 11px; }
.registration-period-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.registration-period-column { min-width: 0; padding: 15px 16px; border-right: 1px solid #e6edf2; }
.registration-period-column:last-child { border-right: 0; }
.registration-period-column h5 { margin: 0 0 10px; color: #435666; font-size: 12px; }
.registration-period-list { margin: 0; padding: 0; list-style: none; }
.registration-period-list li { margin-bottom: 8px; padding: 9px 10px; border-left: 3px solid #aec4d5; color: #3d4f5f; background: #f8fafc; font-size: 11px; }
.registration-period-list li.active { border-left-color: var(--registration-success); background: #f0f8f3; }
.registration-period-list time { display: block; margin-bottom: 3px; font-weight: 700; }
.registration-period-list small { display: block; color: var(--registration-muted); overflow-wrap: anywhere; }
.registration-inline-action { margin-top: 5px; padding: 0; border: 0; color: var(--registration-primary); background: transparent; font-size: 10px; font-weight: 600; }
