/* Модуль «Нормализация адресов» — использует переменные и стилистику Mini App
 * (карточки 16px, та же типографика, те же цвета статусов). Собственной темы и
 * собственного дизайна не вводит. */
#opisModuleAddress{--an-line:#e3e5ed;--an-ink:#262b38;--an-muted:#6b7085;--an-brand:#4338ca;--an-brand-bg:#eef2ff;
  --an-ok:#2bab66;--an-ok-bg:#f0fcf5;--an-warn:#b45309;--an-warn-bg:#fff7ed;--an-err:#b91c1c;--an-err-bg:#fef2f2;
  --an-gray:#6b7085;--an-gray-bg:#f3f4f6;}
#opisModuleAddress .an-card{background:var(--card,#fff);border:1px solid var(--an-line);border-radius:16px;padding:20px 22px;margin-bottom:16px;}
#opisModuleAddress h1{margin:0;font-size:24px;font-weight:700;color:var(--an-ink);}
#opisModuleAddress .an-sub{font-size:14px;color:var(--an-muted);margin-top:6px;line-height:1.5;}
#opisModuleAddress .an-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;}
#opisModuleAddress .an-kpi{border:1px solid var(--an-line);border-radius:14px;padding:14px 16px;background:#fff;}
#opisModuleAddress .an-kpi .v{font-size:26px;font-weight:700;color:var(--an-ink);line-height:1.1;}
#opisModuleAddress .an-kpi .l{font-size:12px;color:var(--an-muted);margin-top:4px;}
#opisModuleAddress .an-kpi.ok .v{color:var(--an-ok);}
#opisModuleAddress .an-kpi.warn .v{color:var(--an-warn);}
#opisModuleAddress .an-kpi.err .v{color:var(--an-err);}
#opisModuleAddress .an-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px;}
#opisModuleAddress input[type=text],#opisModuleAddress input[type=date],#opisModuleAddress select{
  border:1px solid #d4d8e4;border-radius:10px;padding:9px 12px;font:inherit;font-size:14px;color:var(--an-ink);background:#fff;}
#opisModuleAddress input[type=text]{min-width:260px;flex:1 1 260px;}
#opisModuleAddress .an-chip{border:1px solid #d4d8e4;border-radius:999px;padding:7px 14px;font-size:13px;background:#fff;cursor:pointer;color:var(--an-ink);}
#opisModuleAddress .an-chip.on{background:var(--an-brand-bg);border-color:var(--an-brand);color:var(--an-brand);font-weight:600;}
#opisModuleAddress table{width:100%;border-collapse:collapse;font-size:13px;}
#opisModuleAddress th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--an-muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--an-line);white-space:nowrap;}
#opisModuleAddress td{padding:10px;border-bottom:1px solid #f0f1f5;color:var(--an-ink);vertical-align:top;}
#opisModuleAddress tbody tr{cursor:pointer;}
#opisModuleAddress tbody tr:hover{background:#fafbff;}
#opisModuleAddress .an-scroll{overflow-x:auto;}
#opisModuleAddress .an-badge{display:inline-block;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;white-space:nowrap;}
#opisModuleAddress .an-badge.ok{background:var(--an-ok-bg);color:#1a7345;}
#opisModuleAddress .an-badge.review{background:var(--an-warn-bg);color:var(--an-warn);}
#opisModuleAddress .an-badge.notfound{background:var(--an-gray-bg);color:var(--an-gray);}
#opisModuleAddress .an-badge.err{background:var(--an-err-bg);color:var(--an-err);}
#opisModuleAddress .an-badge.info{background:var(--an-brand-bg);color:var(--an-brand);}
#opisModuleAddress .an-tabs{display:flex;gap:18px;border-bottom:1px solid var(--an-line);margin-bottom:16px;flex-wrap:wrap;}
#opisModuleAddress .an-tab{border:0;background:transparent;padding:10px 2px;font:inherit;font-size:14px;font-weight:600;color:var(--an-muted);cursor:pointer;border-bottom:2px solid transparent;}
#opisModuleAddress .an-tab.active{color:var(--an-brand);border-bottom-color:var(--an-brand);}
#opisModuleAddress pre.an-json{background:#f7f8fb;border:1px solid var(--an-line);border-radius:12px;padding:14px;font-size:12px;line-height:1.5;overflow:auto;max-height:460px;margin:0;white-space:pre;}
#opisModuleAddress .an-btn{border:1px solid #d4d8e4;background:#fff;color:var(--an-ink);border-radius:10px;padding:9px 16px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;}
#opisModuleAddress .an-btn.primary{background:var(--an-brand);border-color:var(--an-brand);color:#fff;}
#opisModuleAddress .an-btn:disabled{opacity:.55;cursor:not-allowed;}
#opisModuleAddress .an-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px 20px;}
#opisModuleAddress .an-meta .k{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--an-muted);}
#opisModuleAddress .an-meta .v{font-size:14px;color:var(--an-ink);margin-top:2px;word-break:break-word;}
#opisModuleAddress .an-tl{list-style:none;margin:0;padding:0;}
#opisModuleAddress .an-tl li{position:relative;padding:0 0 14px 22px;border-left:2px solid var(--an-line);}
#opisModuleAddress .an-tl li:last-child{border-left-color:transparent;padding-bottom:0;}
#opisModuleAddress .an-tl li::before{content:'';position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:50%;background:var(--an-brand);}
#opisModuleAddress .an-tl .t{font-size:12px;color:var(--an-muted);font-variant-numeric:tabular-nums;}
#opisModuleAddress .an-tl .m{font-size:14px;color:var(--an-ink);}
#opisModuleAddress .an-drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:#fff;border-left:1px solid var(--an-line);box-shadow:-12px 0 32px #18243b1f;padding:22px;overflow:auto;z-index:60;}
#opisModuleAddress .an-drawer[hidden]{display:none;}
#opisModuleAddress .an-drawer h3{margin:0 0 4px;font-size:18px;color:var(--an-ink);}
#opisModuleAddress .an-sec{margin-top:18px;}
#opisModuleAddress .an-sec>h4{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--an-muted);}
#opisModuleAddress .an-warn-list{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--an-warn);}
#opisModuleAddress .an-empty{padding:30px 10px;text-align:center;color:var(--an-muted);font-size:14px;}
#opisModuleAddress .an-err-box{background:var(--an-err-bg);color:var(--an-err);border-radius:10px;padding:12px 14px;font-size:13px;}
#opisModuleAddress .an-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;word-break:break-all;}
@media(max-width:700px){#opisModuleAddress .an-card{padding:16px;}#opisModuleAddress input[type=text]{min-width:100%;}}
