/* DIG-0039: геометрия и палитра образца Ильяса; стили только внутри карты. */
.mh-block { position:relative; margin:12px 0; min-width:0; max-width:100%; border:1px solid #e4e8f1; border-radius:20px; background:#fff; color:#30384b; font-family:"Segoe UI",Arial,sans-serif; font-variant-numeric:tabular-nums; }
.mh-block > summary { display:flex; align-items:center; gap:14px; box-sizing:border-box; min-height:64px; padding:16px 410px 16px 20px; cursor:pointer; list-style:none; border-bottom:1px solid transparent; }
.mh-block[open] > summary { border-bottom-color:#e8ecf4; }
.mh-block > summary::-webkit-details-marker { display:none; }
.mh-block > summary::before { content:'›'; color:#8b9ab2; font-size:18px; width:14px; flex:none; }
.mh-block[open] > summary::before { content:'⌄'; }
.mh-title { font-size:18px; line-height:24px; font-weight:700; color:#0f172a; white-space:nowrap; }
.mh-period { color:#8090ab; font-size:14px; line-height:20px; font-weight:400; white-space:nowrap; }
.mh-controls { display:flex; align-items:center; gap:8px; position:absolute; right:18px; top:14px; }
.mh-controls button { box-sizing:border-box; height:36px; min-height:0; padding:0 15px; border:1px solid #e4e8f1; border-radius:20px; background:#fff; color:#8895ac; font:400 14px/34px "Segoe UI",Arial,sans-serif; cursor:pointer; box-shadow:none; white-space:nowrap; }
.mh-controls [data-mh=calendar] { border-radius:13px; color:#43516c; }
.mh-controls [data-mh=calendar] > span:first-child { color:#8293ad; margin-right:6px; }
.mh-caret { margin-left:5px; font-size:10px; }
.mh-controls [aria-pressed=true] { background:#eceafe; border-color:#d2caff; color:#6554d6; box-shadow:0 0 0 1px #ece8ff; }
.mh-block button:focus-visible,.mh-block summary:focus-visible,.mh-scroll:focus-visible { outline:2px solid #8070e8; outline-offset:2px; }
.mh-scroll { margin:21px 12px 8px; overflow:auto; min-height:506px; max-width:calc(100% - 24px); position:relative; border:1px solid #e6eaf3; border-radius:14px 14px 0 0; background:#fff; scrollbar-color:#919191 #f5f5f5; scrollbar-width:auto; }
.mh-scroll > [role=status] { padding:20px; color:#8190a8; font-size:14px; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table { border-collapse:separate; border-spacing:0; width:max-content; min-width:100%; table-layout:fixed; font:400 14px/20px "Segoe UI",Arial,sans-serif; color:#5c657b; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table th,:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table td { box-sizing:border-box; width:80px; min-width:80px; height:33px; padding:0; border:0; border-bottom:1px solid #f0f2f7; text-align:center; white-space:nowrap; font:inherit; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table thead th { height:54px; padding:0 8px; position:sticky; top:0; z-index:2; background:#fff; color:#8493ab; font-size:13px; font-weight:600; text-transform:uppercase; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table th:first-child { position:sticky; left:0; z-index:1; width:236px; min-width:236px; max-width:236px; padding:0 10px; border-right:1px solid #e6eaf3; background:#fff; text-align:left; font-size:18px; font-weight:400; color:#30384b; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table thead th:first-child { z-index:4; color:#8493ab; font-size:13px; font-weight:600; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-row-tall > th,:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-row-tall > td { height:60px; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table td button { display:block; box-sizing:border-box; width:100%; min-width:0; height:32px; min-height:0; margin:0; padding:0 9px; background:transparent; border:0; border-radius:0; box-shadow:none; color:inherit; text-align:center; font:600 14px/32px "Segoe UI",Arial,sans-serif; white-space:nowrap; cursor:pointer; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-row-tall td button { height:59px; line-height:59px; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table td button:hover { background:#ffffff30; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-low { background:#fbe2e2; color:#c54343; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-high { background:#bfe8cd; color:#0b6b3a; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table .mh-neutral { background:#f1f3f7; color:#626b80; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table tr:nth-child(2n) .mh-high { background:#dcf1e3; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table tr:nth-child(2n) .mh-low { background:#f8cfcf; }
.mh-dialog { max-width:min(620px,90vw); max-height:80vh; overflow:auto; border:1px solid #e4e8f1; border-radius:16px; padding:24px; background:#fff; color:#394257; font:14px/1.5 "Segoe UI",Arial,sans-serif; }
.mh-dialog::backdrop { background:#18213855; }
.mh-dialog h3 { margin:0 0 16px; font-size:18px; }
.mh-dialog button,.mh-dialog input { padding:7px 12px; border:1px solid #dce1ed; border-radius:9px; background:#fff; color:#43516c; font:inherit; }
.mh-dialog button { cursor:pointer; }
.mh-date-fields,.mh-extra-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:12px 0; }
.mh-date-fields label { display:flex; align-items:center; gap:6px; }
.mh-legend,.mh-note { font-size:12px; color:#758199; }
@media(max-width:1100px) { .mh-block > summary { flex-wrap:wrap; gap:4px 12px; }.mh-period { margin-left:26px; flex-basis:100%; } }
@media(max-width:700px) { .mh-block > summary { padding:14px 16px; min-height:70px; }.mh-title { font-size:16px; }.mh-period { font-size:12px; }.mh-controls { position:static; justify-content:flex-start; flex-wrap:wrap; padding:10px 12px 0; gap:6px; }.mh-controls button { padding:0 11px; font-size:12px; }.mh-scroll { margin-top:12px; }:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table th:first-child { width:165px; min-width:165px; max-width:165px; font-size:13px; } }

.mh-scroll::-webkit-scrollbar { height:14px; }
.mh-scroll::-webkit-scrollbar-track { background:#f5f5f5; }
.mh-scroll::-webkit-scrollbar-thumb { background:#919191; border:2px solid #f5f5f5; border-radius:8px; }

/* DIG-0039: reference price band. */
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table tr:nth-child(3) td { background:#f5f4ff; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table td button { transition:background-color .12s ease; }
:is(#metric-heatmap-wb,#metric-heatmap-ozon) .mh-table td button:hover { background:#ffffff55; }
