/* Farooq Music 2.0 — Dashboard (Day 22 part 2, WBS D22-2). On top of fm2-admin.css (not touched).
   Same control-room look. No inline styles anywhere (CSP). */
.view-dashboard{display:grid;gap:1.4rem;padding:1.5rem 2rem;max-width:110rem;margin:0 auto}
.ur .view-dashboard{direction:rtl}
.dash-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.dash-head .state{margin:0;font-family:var(--display);font-weight:var(--num-w);font-size:1.5rem;letter-spacing:.02em}
.ur .dash-head .state{letter-spacing:0;font-family:"Nastaliq",var(--mono);font-size:1.4rem;line-height:2.2}
.dash-head .state.good{color:var(--good)} .dash-head .state.warn{color:var(--amber)} .dash-head .state.bad{color:var(--red)}
.dash-head .upd{margin:0;color:var(--dim);display:flex;gap:.8rem;align-items:center}
.group{display:grid;gap:.7rem}
.group h2{margin:0}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:.8rem}
.tile{border:1px solid var(--line);background:var(--panel);padding:.9rem 1rem;display:grid;gap:.35rem;align-content:start}
.tile .k{font-size:.72rem;font-weight:600;letter-spacing:var(--label-ls);color:var(--dim)}
.ur .tile .k{letter-spacing:0;font-size:.95rem;line-height:1.9}
.tile .n{font-family:var(--display);font-weight:var(--num-w);font-size:1.9rem;line-height:1.15;color:var(--ink-hi);direction:ltr;unicode-bidi:isolate}
.ur .tile .n{text-align:right}
.tile .n.word,.tile .n.date{font-size:1.25rem}
.ur .tile .n.word{font-family:"Nastaliq",var(--mono);font-size:1.2rem;line-height:2;direction:rtl}
.tile .l{color:var(--soft);font-size:.82rem;line-height:1.6}
.ur .tile .l{font-size:.98rem;line-height:2}
.tile.good{box-shadow:inset 4px 0 0 var(--good)} .ur .tile.good{box-shadow:inset -4px 0 0 var(--good)}
.tile.warn{box-shadow:inset 4px 0 0 var(--amber)} .ur .tile.warn{box-shadow:inset -4px 0 0 var(--amber)}
.tile.bad{box-shadow:inset 4px 0 0 var(--red)} .ur .tile.bad{box-shadow:inset -4px 0 0 var(--red)}
.tile.idle{box-shadow:inset 4px 0 0 var(--line-3)} .ur .tile.idle{box-shadow:inset -4px 0 0 var(--line-3)}
.meter{height:.4rem;background:var(--line-2);position:relative;overflow:hidden}
.meter i{position:absolute;inset:0 auto 0 0;background:var(--phos)}
.meter.warn i{background:var(--amber)} .meter.bad i{background:var(--red)}
.errors{list-style:none;margin:0;padding:0;border:1px solid var(--line);background:var(--panel)}
.errors li{display:grid;grid-template-columns:11rem 6rem 1fr;gap:.8rem;padding:.55rem 1rem;border-top:1px solid var(--line-2);direction:ltr;text-align:left}
.errors li:first-child{border-top:0}
.errors .lv{color:var(--red)} .errors .tm{color:var(--dim)} .errors .ms{color:var(--soft);word-break:break-word}
.errors li.none{display:block;color:var(--good)}
.ur .errors li.none{direction:rtl;text-align:right;font-family:"Nastaliq",var(--mono);line-height:2}
.plan a{color:var(--phos)}
@media (max-width:40rem){.view-dashboard{padding:1rem}.errors li{grid-template-columns:1fr}}
