.price-workspace,.matrix-district { color:var(--erdal-ice); }
.matrix-panel { padding:clamp(18px,3vw,32px); background:var(--erdal-panel); border:1px solid var(--erdal-line); border-radius:20px; }
.price-workspace h2,.matrix-district h2 { margin-bottom:16px; }
.matrix-controls { display:grid; grid-template-columns:1fr 1fr auto; gap:16px; align-items:end; margin:24px 0; }
.matrix-controls label,.matrix-compact label,.matrix-district label { display:grid; gap:8px; min-width:0; }
.matrix-controls select,.matrix-compact input,.matrix-district input { width:100%; min-height:48px; }
.matrix-controls button { min-height:48px; }
.matrix-result { padding:16px; border:1px solid var(--erdal-line); border-radius:12px; }
.matrix-result p { margin:0 0 10px; }
.matrix-featured { margin:32px 0; }
.matrix-featured-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.matrix-featured-grid article { padding:20px; }
.matrix-featured-grid h3 { font-size:16px; }
.matrix-featured-grid strong { color:var(--erdal-gold); }
.matrix-note { color:var(--erdal-muted); max-width:90ch; margin-bottom:16px; }
.matrix-scroll { max-width:100%; max-height:min(68vh,680px); overflow:auto; overscroll-behavior:contain; border:1px solid var(--erdal-line); border-radius:16px; margin:16px 0 28px; }
.matrix-table { width:max-content; border-collapse:separate; border-spacing:0; font-size:14px; }
.matrix-table caption { text-align:left; padding:16px; color:var(--erdal-ice); }
.matrix-table th,.matrix-table td { min-width:145px; padding:13px 14px; text-align:center; border-bottom:1px solid var(--erdal-line); border-right:1px solid var(--erdal-line); white-space:nowrap; }
.matrix-table thead th { position:sticky; top:0; z-index:2; background:var(--erdal-night); color:var(--erdal-gold); }
.matrix-table tbody th { position:sticky; left:0; z-index:1; text-align:left; background:var(--erdal-night); }
.matrix-table thead th:first-child { left:0; z-index:3; }
.matrix-table tbody tr:nth-child(even) td { background:rgba(var(--erdal-gold-rgb),.015); }
.matrix-table tr:hover td,.matrix-table td.matrix-column-hover { background:rgba(var(--erdal-gold-rgb),.09); }
.matrix-table [data-cell-type="SAME_DISTRICT"] { color:var(--erdal-muted); }
.matrix-quote,.matrix-range { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:44px; color:var(--erdal-gold); border-radius:8px; padding:5px 8px; }
.matrix-range { border:1px solid var(--erdal-line); background:transparent; font:inherit; font-weight:inherit; cursor:pointer; }
.matrix-quote:hover,.matrix-range:hover { background:rgba(var(--erdal-gold-rgb),.12); }
.matrix-quote:active,.matrix-range:active { background:rgba(var(--erdal-gold-rgb),.2); }
.price-workspace :focus-visible,.matrix-district :focus-visible,.matrix-dialog :focus-visible { outline:3px solid var(--erdal-gold); outline-offset:3px; }
.matrix-compact { padding:18px; margin-top:8px; }
.matrix-table-toggle { display:inline-flex; margin:16px 0; }
.matrix-full { margin:8px 0 28px; }
.matrix-full-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; flex-wrap:wrap; }
.matrix-full-head .matrix-note { margin-bottom:12px; }
.matrix-compact-more { margin-top:8px; }
.matrix-compact-more > summary { padding:12px 0; min-height:48px; cursor:pointer; color:var(--erdal-gold); }
.matrix-route-list { list-style:none; padding:0; margin:16px 0; }
.matrix-route-row { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:56px; padding:9px 0; border-bottom:1px solid var(--erdal-line); }
.matrix-route-row strong { text-align:right; font-size:15px; }
.matrix-district label { max-width:440px; }
.matrix-district-more { margin:20px 0; }
.matrix-district summary,.matrix-explanation summary { padding:14px 0; min-height:48px; cursor:pointer; color:var(--erdal-gold); }
.matrix-explanation { margin-top:28px; }
.matrix-dialog { width:min(560px,calc(100% - 32px)); max-height:80svh; overflow:auto; padding:24px; border:1px solid var(--erdal-gold); border-radius:20px; background:var(--erdal-night); color:var(--erdal-ice); }
.matrix-dialog::backdrop { background:var(--erdal-black); opacity:.85; }
.matrix-dialog ul { padding-left:20px; }
.matrix-dialog li { margin:12px 0; }
.matrix-dialog form { margin-top:16px; }
.price-workspace [hidden],.matrix-district [hidden] { display:none!important; }
@media(max-width:800px) {
  .matrix-controls { grid-template-columns:1fr; }
  .matrix-featured-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .matrix-table-toggle,.matrix-full { display:none!important; }
  .matrix-scroll { max-height:60svh; }
  .matrix-table th,.matrix-table td { min-width:128px; padding:10px; }
  .matrix-route-row strong { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) { .price-workspace *,.matrix-district * { scroll-behavior:auto!important; } }
