/* Реестр и состав лицевого счёта */

.registration-search { padding: 18px 24px 16px; border-bottom: 1px solid #e6edf2; background: #f8fafc; }
.registration-search__fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.registration-search__fieldset:disabled { opacity: .68; }
.registration-search__fieldset:disabled .registration-button { border-color: #c6d0d8; color: #6f7d88; background: #edf1f4; }
.registration-search__main { display: flex; align-items: center; gap: 8px; }
.registration-search__input { position: relative; flex: 1 1 460px; margin: 0; }
.registration-search__input > label { display: block; margin: 0; }
.registration-search__input > label > .glyphicon { position: absolute; top: 12px; left: 13px; color: #7b8792; }
.registration-search__input input { width: 100%; height: 40px; padding: 8px 12px 8px 38px; border: 1px solid #bfcbd6; border-radius: 5px; color: var(--registration-text); background: #fff; }
.registration-registry-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; padding: 16px 24px; border-bottom: 1px solid #e6edf2; background: #fbfcfd; }
.registration-autocomplete { position: relative; }
.registration-suggestions { position: absolute; top: calc(100% + 5px); right: 0; left: 0; z-index: 40; max-height: 330px; margin: 0; padding: 5px; overflow-y: auto; border: 1px solid #b8c8d4; border-radius: 6px; background: #fff; box-shadow: 0 10px 28px rgba(29, 49, 65, .18); list-style: none; }
.registration-suggestions li { margin: 0; }
.registration-suggestions li.active { background: #eaf5fc; }
.registration-suggestions button { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 7px; width: 100%; padding: 9px 10px; border: 0; border-radius: 4px; color: var(--registration-text); background: transparent; text-align: left; }
.registration-suggestions button:hover { background: #f0f7fb; }
.registration-suggestions .glyphicon { position: static; margin-top: 3px; color: var(--registration-primary); }
.registration-suggestions strong,
.registration-suggestions small { display: block; }
.registration-suggestions strong { font-size: 12px; }
.registration-suggestions small { margin-top: 2px; color: var(--registration-muted); font-size: 10px; font-weight: 400; line-height: 1.35; }
.registration-suggestions-empty { position: absolute; top: calc(100% + 5px); right: 0; left: 0; z-index: 40; margin: 0; padding: 11px 12px; border: 1px solid #c9d5de; border-radius: 5px; color: var(--registration-muted); background: #fff; box-shadow: 0 8px 22px rgba(29, 49, 65, .12); font-size: 11px; }
.registration-search-start { padding: 54px 20px 62px; color: var(--registration-muted); text-align: center; }
.registration-search-start > .glyphicon { color: #9cb5c7; font-size: 32px; }
.registration-search-start h4 { margin: 12px 0 6px; color: var(--registration-text); font-size: 16px; }
.registration-search-start p { max-width: 520px; margin: 0 auto; font-size: 12px; }
.registration-search-loading { padding: 54px 20px 62px; color: var(--registration-muted); text-align: center; }
.registration-search-loading > .glyphicon { color: var(--registration-primary); font-size: 30px; }
.registration-search-loading h4 { margin: 13px 0 5px; color: var(--registration-text); font-size: 16px; }
.registration-search-loading p { margin: 0; font-size: 12px; }
.registration-spin { animation: registration-spin 1s linear infinite; }
@keyframes registration-spin { to { transform: rotate(360deg); } }
.registration-filter-grid { display: grid; grid-template-columns: repeat(5, minmax(150px, 1fr)); gap: 12px; margin-top: 15px; padding-top: 15px; border-top: 1px solid #dfe7ee; }
.registration-filter-grid label { margin: 0; color: #51606d; font-size: 12px; font-weight: 600; }
.registration-filter-grid label > span { display: block; margin-bottom: 5px; }
.registration-filter-grid select { width: 100%; height: 36px; padding: 6px 9px; border: 1px solid #bfcbd6; border-radius: 4px; background: #fff; font-weight: 400; }
.registration-list-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 24px; }
.registration-segmented { display: inline-flex; border: 1px solid #bfcbd6; border-radius: 5px; overflow: hidden; }
.registration-segmented button { min-height: 34px; padding: 6px 13px; border: 0; border-right: 1px solid #bfcbd6; color: #445667; background: #fff; font-size: 12px; font-weight: 600; }
.registration-segmented button:last-child { border-right: 0; }
.registration-segmented button.active { color: #fff; background: var(--registration-primary); }
.registration-result-count { color: var(--registration-muted); font-size: 12px; }
.registration-table-wrap { contain: layout paint; width: 100%; max-width: 100%; overflow-x: auto; border-top: 1px solid #e6edf2; -webkit-overflow-scrolling: touch; scrollbar-gutter: stable; }
.registration-table-wrap:focus { outline: 2px solid #fff; outline-offset: -4px; box-shadow: inset 0 0 0 4px #005a9c; }
.registration-table { width: 100%; min-width: 1120px; margin: 0; border-collapse: collapse; font-size: 12px; }
.registration-table th { padding: 11px 10px; border-bottom: 1px solid #cbd6df; color: #4c5b68; background: #f5f8fa; font-size: 11px; text-align: left; text-transform: uppercase; vertical-align: bottom; }
.registration-table td { padding: 12px 10px; border-bottom: 1px solid #e7edf2; color: #364553; line-height: 1.4; overflow-wrap: anywhere; vertical-align: top; }
.registration-table tbody tr:hover { background: #f8fbfd; }
.registration-sort { padding: 0; border: 0; color: inherit; background: transparent; font: inherit; text-transform: inherit; }
.registration-sort .glyphicon { margin-left: 3px; color: #7890a5; }
.registration-text-action { padding: 0; border: 0; color: var(--registration-primary); background: transparent; font-weight: 600; text-align: left; }
.registration-attention { display: block; margin-top: 4px; color: var(--registration-warning); font-size: 10px; }
.registration-status { display: inline-block; max-width: 180px; padding: 4px 7px; border: 1px solid #b9cfde; border-radius: 12px; color: #32506a; background: #e8f1f7; font-size: 10px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.registration-status_archived { border-color: #bec4ca; color: #4e565f; background: #e9ecef; }
.registration-status_temporarily-absent { border-color: #dfbf70; color: #6f4900; background: #fff0c9; }
.registration-status_resides-without-registration,
.registration-status_attention { border-color: #dcaa95; color: #78361e; background: #fce4da; }
.registration-row-actions { white-space: nowrap; }
.registration-icon-button { width: 31px; height: 31px; margin: 0 2px; border: 1px solid #bdcbd6; border-radius: 4px; color: var(--registration-primary); background: #fff; }
.registration-empty { padding: 58px 20px; border-top: 1px solid #e6edf2; color: var(--registration-muted); text-align: center; }
.registration-empty > .glyphicon { color: #a9b8c5; font-size: 30px; }
.registration-empty h4 { margin: 12px 0 5px; color: var(--registration-text); }
.registration-empty p { margin: 0 0 14px; }
.registration-pagination { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 16px; }
.registration-pagination button { min-height: 32px; padding: 5px 12px; border: 1px solid #bdcbd6; border-radius: 4px; color: var(--registration-primary); background: #fff; }
.registration-pagination button:disabled { color: #9daab4; background: #f2f4f6; }
.registration-pagination span { color: var(--registration-muted); font-size: 12px; }

.registration-heading-with-back { position: relative; padding-left: 0; }
.registration-back { display: block; margin: 0 0 10px; padding: 0; border: 0; color: var(--registration-primary); background: transparent; font-size: 12px; font-weight: 600; }
.registration-header-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; max-width: 100%; gap: 8px; }
.registration-account-summary { display: grid; grid-template-columns: minmax(360px, 1fr) minmax(420px, 1.3fr); gap: 24px; padding: 18px 24px; border-bottom: 1px solid #e6edf2; background: #f8fafc; }
.registration-account-summary dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; }
.registration-account-summary dt { margin-bottom: 4px; color: var(--registration-muted); font-size: 10px; text-transform: uppercase; }
.registration-account-summary dd { margin: 0; color: var(--registration-text); font-size: 13px; font-weight: 600; }
.registration-counter-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.registration-counter-grid article { padding: 9px 10px; border: 1px solid #dce5ec; border-radius: 5px; background: #fff; }
.registration-counter-grid strong { display: block; color: var(--registration-primary); font-size: 19px; }
.registration-counter-grid span { display: block; color: var(--registration-muted); font-size: 10px; }
.registration-account-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; }
.registration-account-main { min-width: 0; }
.registration-account-history { padding: 20px; border-left: 1px solid #e6edf2; background: #fbfcfd; }
.registration-account-history h4 { margin: 0 0 15px; font-size: 14px; }
.registration-account-history ol { margin: 0; padding: 0; list-style: none; }
.registration-account-history li { position: relative; padding: 0 0 14px 15px; border-left: 2px solid #d5e2ec; }
.registration-account-history li::before { position: absolute; top: 3px; left: -5px; width: 8px; height: 8px; border-radius: 50%; background: var(--registration-primary); content: ''; }
.registration-account-history time { color: var(--registration-muted); font-size: 10px; }
.registration-account-history p { margin: 3px 0 0; color: #445565; font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.registration-table-subline { display: block; margin-top: 3px; color: var(--registration-muted); }
.registration-account-table { min-width: 980px; }
.registration-icon-button_danger { color: var(--registration-danger); }
.registration-muted { color: var(--registration-muted); font-size: 12px; }

.registration-audit-filters { grid-template-columns: repeat(6, minmax(130px, 1fr)) auto; margin: 0; padding: 16px 24px; border-top: 0; border-bottom: 1px solid #e6edf2; background: #f8fafc; }
.registration-audit-filters input { width: 100%; height: 36px; padding: 6px 9px; border: 1px solid #bfcbd6; border-radius: 4px; background: #fff; }
.registration-audit-filters .registration-button { align-self: end; }
.registration-audit-list { border-top: 1px solid #e6edf2; }
.registration-audit-event { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 18px; padding: 15px 24px; border-bottom: 1px solid #e6edf2; }
.registration-audit-event__meta time,
.registration-audit-event__meta span,
.registration-audit-event__meta small { display: block; }
.registration-audit-event__meta time { color: var(--registration-text); font-size: 11px; font-weight: 700; }
.registration-audit-event__meta span { margin: 3px 0; color: var(--registration-primary); font-size: 10px; }
.registration-audit-event__meta small { color: var(--registration-muted); font-size: 10px; }
.registration-audit-event__content h4 { margin: 0 0 5px; color: #354858; font-size: 13px; }
.registration-audit-event__content p { margin: 0 0 5px; color: var(--registration-muted); font-size: 11px; overflow-wrap: anywhere; }
.registration-audit-diff { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.registration-audit-diff > div { min-width: 0; padding: 9px; border: 1px solid #dce5ec; border-radius: 4px; background: #f8fafc; }
.registration-audit-diff strong { color: #526472; font-size: 10px; text-transform: uppercase; }
.registration-audit-diff pre { max-height: 180px; margin: 5px 0 0; padding: 7px; overflow: auto; border: 0; color: #3d4e5c; background: #fff; font-size: 9px; white-space: pre-wrap; }
.registration-audit-more { display: block; margin: 16px auto; }
