/* «کیفیت قیمت‌ها» and «سلامت منبع‌ها» page parts; shared components are in ds.css. */

/* source chain map */
.q-pipe{overflow-x:auto}
.q-prow{display:grid;grid-template-columns:minmax(150px,190px) minmax(330px,1fr) minmax(170px,220px);align-items:center;gap:16px;padding:12px 18px;border-top:1px solid var(--line);min-width:720px}
.q-prow:first-child{border-top:0}
.q-prow.head{font-size:11.5px;color:var(--dim);font-weight:700;padding-block:10px;background:rgb(255 255 255 / .015)}
.q-lane b{display:block;font-size:13.5px}
.q-lane span{font-size:11.5px;color:var(--dim)}
.q-chain{display:flex;align-items:center;flex-wrap:nowrap;padding-top:6px}
.q-node{display:inline-flex;align-items:center;gap:7px;border-radius:10px;padding:5px 11px;font-size:12.5px;font-weight:650;border:1px solid var(--line-2);background:var(--bg-2);color:var(--muted);white-space:nowrap;position:relative;font-family:inherit}
.q-node:hover{border-color:var(--gold)}
.q-node.live{color:var(--ink);border-color:rgb(61 214 140 / .55);background:rgb(61 214 140 / .08)}
.q-node.live::after{content:"در حال تأمین";position:absolute;top:-9px;inset-inline-start:8px;font-size:9.5px;line-height:1.5;background:var(--ok);color:#06210f;border-radius:5px;padding:0 5px;font-weight:800}
.q-node.bad{color:var(--bad);border-color:rgb(255 107 122 / .5);background:rgb(255 107 122 / .1)}
.q-node.warn{color:var(--warn);border-color:rgb(242 153 74 / .45)}
.q-link{width:26px;height:2px;background:var(--line-2);position:relative;flex:none}
.q-link::after{content:"";position:absolute;inset-inline-end:-1px;top:-3px;border:4px solid transparent;border-inline-end-color:var(--line-2);transform:scaleX(-1)}
.q-up{display:grid;gap:2px;height:22px;align-items:stretch}
.q-up i{border-radius:2px;background:var(--surface-3);transition:transform .12s}
.q-up i:hover,.q-up i.on{transform:scaleY(1.25);outline:1px solid var(--ink);outline-offset:1px}
.q-upmeta{display:flex;justify-content:space-between;font-size:10.5px;color:var(--dim);margin-top:3px}

/* issues */
.q-inc{display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 16px 12px 12px;border-top:1px solid var(--line);transition:background .15s}
.q-inc:first-child{border-top:0}
.q-inc:hover{background:rgb(255 255 255 / .025)}
.q-inc .sev{align-self:stretch;border-radius:3px;background:var(--bad)}
.q-inc h3{margin:0;font-size:14px;font-weight:750;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.q-inc p{font-size:12.5px;color:var(--muted);margin:2px 0 0;overflow-wrap:anywhere}
.q-inc .who{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.q-inc .right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:end}
.q-inc time{font-size:12px;color:var(--dim);white-space:nowrap}
.q-inc .more{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:6px}

/* archive editor */
.q-arctop{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.q-combo{position:relative;flex:1 1 280px;max-width:400px}
.q-combo .q-input{padding-inline-start:36px;height:42px;font-size:14.5px}
.q-combo>.ic{position:absolute;inset-inline-start:12px;top:12px;color:var(--dim);width:17px;height:17px}
.q-combo ul{position:absolute;top:calc(100% + 6px);inset-inline:0;margin:0;padding:6px;list-style:none;background:var(--surface-2);border:1px solid var(--line-2);border-radius:12px;box-shadow:var(--shadow);z-index:20;max-height:300px;overflow:auto}
.q-combo li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13.5px}
.q-combo li small{color:var(--dim);font-size:11.5px}
.q-combo li:hover,.q-combo li[aria-selected="true"]{background:var(--surface-3)}
.q-suspects{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--muted);background:rgb(255 107 122 / .1);border:1px solid rgb(255 107 122 / .25);border-radius:12px;padding:8px 12px}
.q-suspects.clean{background:rgb(61 214 140 / .1);border-color:rgb(61 214 140 / .25)}
.q-suspects button{border:1px solid rgb(255 107 122 / .45);background:transparent;color:var(--bad);border-radius:999px;padding:2px 11px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit}
.q-suspects button:hover{background:rgb(255 107 122 / .15)}
.q-chartcard{padding:14px 16px 10px;display:grid;gap:8px}
.q-chartcard .top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:baseline}
.q-chartcard .top b{font-size:16px}
.q-chart{width:100%;height:auto;display:block;cursor:crosshair;direction:ltr}
.q-foot{font-size:12px;color:var(--muted);display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.q-editor{padding:16px 18px;display:grid;gap:14px}
.q-editor.on{border-color:rgb(242 193 78 / .35);box-shadow:0 0 0 3px rgb(242 193 78 / .08)}
.q-edhead{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:center}
.q-edhead h3{margin:0;font-size:16px;font-weight:850}
.q-cells{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.q-cell{display:grid;gap:6px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-width:0}
.q-cell label{font-size:12px;color:var(--muted);font-weight:700;display:flex;justify-content:space-between;gap:6px;align-items:center}
.q-cell .cur{font-size:12px;color:var(--dim)}
.q-cell .cur b{font-weight:700;color:var(--muted)}
.q-cell .cur.badv b{color:var(--bad)}
.q-cell .q-input{text-align:left;font-weight:700;direction:ltr}
.q-cell .q-input.err{border-color:var(--bad);box-shadow:0 0 0 3px rgb(255 107 122 / .15)}
.q-cell .dlt{font-size:11.5px;color:var(--dim);min-height:1.7em}
.q-cell .dlt.ch{color:var(--gold)}
.q-suggest{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;background:rgb(242 193 78 / .13);border:1px solid rgb(242 193 78 / .3);border-radius:12px;padding:10px 12px;font-size:13px}
.q-val{font-size:12.5px;display:flex;gap:8px;align-items:center}
.q-val.bad{color:var(--bad)} .q-val.warn{color:var(--warn)} .q-val.ok{color:var(--ok)}
.q-edfoot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.q-hintline{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--muted);line-height:1.7}
.q-hintline .ic{color:var(--info);margin-top:3px;width:16px;height:16px}
details.q-hist{padding:4px 16px}
details.q-hist summary{cursor:pointer;padding:10px 0;font-size:13.5px;font-weight:700;list-style:none;display:flex;justify-content:space-between}
details.q-hist summary::after{content:"+";color:var(--dim)} details.q-hist[open] summary::after{content:"−"}
.q-hrow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-size:12.5px}
.q-hrow p{color:var(--muted);margin:0}

/* events timeline */
.q-tl{position:relative;display:grid;gap:12px;padding-inline-start:22px}
.q-tl::before{content:"";position:absolute;inset-inline-start:6px;top:6px;bottom:6px;width:2px;background:var(--line-2)}
.q-ev{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center}
.q-ev::before{content:"";position:absolute;inset-inline-start:-21px;top:18px;width:12px;height:12px;border-radius:50%;background:var(--bg-2);border:2px solid var(--violet)}
.q-ev.cap::before{border-color:var(--teal)}
.q-ev b{font-size:14px}.q-ev p{font-size:12.5px;color:var(--muted);margin:0}
.q-day{font-size:12px;color:var(--dim);font-weight:700;margin-inline-start:-22px}

/* source health page */
.q-hk{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.q-hlane{border-top:1px solid var(--line)}
.q-hlrow{display:grid;grid-template-columns:minmax(140px,190px) minmax(0,1fr) 74px 70px 24px;gap:14px;align-items:center;padding:10px 18px;cursor:pointer;width:100%;border:0;background:transparent;text-align:start;font:inherit;color:inherit}
.q-hlrow:hover{background:rgb(255 255 255 / .025)}
.q-hlrow b{font-size:13.5px;display:block}
.q-hlrow small{font-size:11.5px;color:var(--dim)}
.q-pct{font-size:14px;font-weight:800;text-align:end}
.q-cnt{font-size:12px;color:var(--dim);text-align:end}
.q-chev{color:var(--dim);transition:transform .2s;width:16px;height:16px}
.q-hlane.open .q-chev{transform:rotate(-90deg)}
.q-hsrc{display:none;padding:0 18px 10px}
.q-hlane.open .q-hsrc{display:grid;gap:4px}
.q-hsrow{display:grid;grid-template-columns:minmax(124px,174px) minmax(0,1fr) 74px 70px 24px;gap:14px;align-items:center;padding:6px 0;font-size:12.5px;color:var(--muted)}
.q-hsrow .role{font-size:10.5px;color:var(--dim)}
.q-days{display:grid;gap:2px;height:28px}
.q-days i{border-radius:2px;background:var(--surface-3);transition:transform .12s}
.q-days i:hover,.q-days i.on{transform:scaleY(1.2);outline:1px solid var(--ink);outline-offset:1px}
.q-hsrow .q-days{height:18px}
.q-hgrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px}
.q-serie{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.q-cal{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,1fr);gap:3px;padding:4px 18px 12px;direction:ltr}
.q-cal i{aspect-ratio:1;border-radius:3px;background:var(--surface-3);min-width:0}
.q-cal i:hover{outline:1px solid var(--ink)}
.q-hev{display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:14px;padding:12px 18px 12px 14px;border-top:1px solid var(--line);align-items:start}
.q-hev .sev{align-self:stretch;border-radius:3px}
.q-hev h3{margin:0;font-size:14px;font-weight:750;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.q-hev p{font-size:12.5px;color:var(--muted);margin:2px 0 0}
.q-hev .meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.q-dur{display:grid;gap:4px;justify-items:end;min-width:130px}
.q-dur .bar{height:6px;border-radius:9px;background:var(--surface-3);width:120px;overflow:hidden}
.q-dur .bar i{display:block;height:100%;border-radius:9px;margin-inline-start:auto}
.q-dur time{font-size:12px;color:var(--dim);white-space:nowrap}
.q-notetxt{margin-top:6px;font-size:12.5px;color:var(--ink);background:var(--bg-2);border-radius:8px;padding:6px 10px;border-inline-start:3px solid var(--info)}
.q-noteedit{margin-top:8px;display:grid;gap:6px}
.q-tw{overflow-x:auto}
table.q-dt{width:100%;border-collapse:collapse;font-size:13px;min-width:600px}
table.q-dt th{font-size:11.5px;color:var(--dim);font-weight:700;text-align:start;padding:8px 18px;border-top:1px solid var(--line);white-space:nowrap}
table.q-dt th[data-s]{cursor:pointer}
table.q-dt th[data-s]:hover{color:var(--ink)}
table.q-dt th[aria-sort="descending"]::after{content:" ▼";font-size:9px}
table.q-dt th[aria-sort="ascending"]::after{content:" ▲";font-size:9px}
table.q-dt td{padding:9px 18px;border-top:1px solid var(--line)}
table.q-dt tr:hover td{background:rgb(255 255 255 / .025)}
table.q-dt .n{text-align:end}
.q-chart2{width:100%;height:auto;display:block;direction:ltr;cursor:crosshair}

@media (prefers-reduced-motion:reduce){.q-pulse::before{animation:none}.q-drawer,.q-scrim{transition:none}}
@media (max-width:1000px){
  .q-kpis,.q-hk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .q-hgrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:900px){
  .q-prow{grid-template-columns:minmax(120px,160px) minmax(0,1fr);min-width:0}
  .q-prow>div:last-child{grid-column:1/-1}
  .q-prow.head>span:last-child{display:none}
  .q-chain{flex-wrap:wrap;row-gap:14px}
  .q-hlrow,.q-hsrow{grid-template-columns:minmax(0,1fr) 64px 24px}
  .q-hlrow .q-days,.q-hsrow .q-days{grid-column:1/-1;grid-row:2}
  .q-hlrow .q-cnt,.q-hsrow .q-cnt{display:none}
}
@media (max-width:760px){
  .q-band{grid-template-columns:auto minmax(0,1fr)}
  .q-meta{grid-column:1/-1;justify-content:space-around}
  .q-inc,.q-hev{grid-template-columns:4px minmax(0,1fr)}
  .q-inc .right,.q-hev .q-dur{grid-column:2;justify-content:start;justify-items:start}
  .q-cells{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:460px){
  .q-kpis,.q-hk{grid-template-columns:minmax(0,1fr)}
}
