/* 御神体息災 (/ryoushi/status/): QRA observations in the sanctuary's paper, ink and serif. */
.vesselStatus{--mark:#803d32;--rule:#927555;--grid:#e4d9c4;--good:#4f7654;--wait:#a1834d}
.vsLead{text-align:center;color:var(--brown);text-wrap:balance}
.vesselStatus .smallHeading p,.vsTaint .miniNote{text-wrap:pretty}
.vsMeta{text-align:center;color:var(--muted);font-size:13px;margin:-6px 0 18px}
.vsMeta.stale{color:var(--red)}
.vesselStatus.loading .vsSection{opacity:.55;transition:opacity .2s}
.vsPair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.vsVesselHead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}
.vsVesselHead h3{font-size:clamp(23px,2.3vw,31px);letter-spacing:.1em;margin-top:2px}
.vsGrade{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#f3ecde;padding:4px 11px;font-size:13px;color:var(--brown);white-space:nowrap;margin:4px 0 0}
.vsGrade i,.vsVerdict i{flex:none;display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--wait)}
.vsGrade i.on,.vsVerdict i{background:var(--good)}
.vsGrade i.off,.vsVerdict.alert i{background:var(--mark)}
.vsWhen{font-size:12px;color:var(--muted);margin:8px 0 14px}
.vsTiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:20px}
.vsTile{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 12px;min-width:0}
.vsTile small{display:block;font-size:11px;color:var(--muted);letter-spacing:.06em}
.vsTile b{display:block;font:500 21px/1.35 Georgia,var(--serif);color:#5d3a29;margin-top:3px;overflow-wrap:anywhere}
.vsTile.main b{font-size:24px}
.vsTile span{display:block;font-size:11px;color:var(--muted)}
.vsChart{margin:0}
.vsChart figcaption,.vsPanelTitle{font-size:13px;color:var(--brown);margin-bottom:6px;letter-spacing:.04em}
.vsPanelTitle{font-size:clamp(17px,1.6vw,21px);letter-spacing:.08em;margin-bottom:10px}
.vsPlot{position:relative;width:100%}
.vsEmpty{display:flex;align-items:center;justify-content:center;min-height:140px;margin:0;border:1px solid var(--grid);color:var(--muted);font-size:13px}
.vsPlot svg{display:block;width:100%;height:auto;overflow:visible;font-family:var(--serif)}
.vsPlot svg:focus{outline:none}
.vsPlot svg:focus-visible,.vsPlot g:focus-visible{outline:2px solid var(--gilt);outline-offset:2px}
.vsPlot g.on path{fill:#5f2c23}
.vsTip{position:absolute;z-index:3;pointer-events:none;transform:translate(-50%,-100%);background:#fffaf1;border:1px solid var(--line);box-shadow:0 4px 12px #3b2c1a1f;padding:6px 10px;font-size:12px;line-height:1.5;white-space:nowrap}
.vsTip b{display:block;font:600 15px Georgia,var(--serif);color:var(--ink)}
.vsTip span{display:block;color:var(--muted)}
.vsSummary{display:flex;flex-wrap:wrap;align-items:center;gap:10px 34px;border-block:1px solid var(--line);padding:14px 4px;margin:0 0 22px}
.vsSummary small{display:block;font-size:11px;color:var(--muted);letter-spacing:.06em}
.vsSummary b{font:500 20px Georgia,var(--serif);color:#5d3a29}
.vsVerdict{margin:0 0 0 auto;display:flex;align-items:center;gap:8px;color:var(--brown);font-size:15px}
.vsTableWrap{overflow-x:auto;margin-top:16px}
.vsTable{border-collapse:collapse;width:100%;font-size:13px}
.vsTable th{font-weight:500;color:var(--muted);font-size:11px;letter-spacing:.05em;text-align:right;border-bottom:1px solid var(--line);padding:8px 10px;white-space:nowrap}
.vsTable td{text-align:right;padding:8px 10px;border-bottom:1px solid var(--grid);font-family:Georgia,var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap}
.vsTable th:first-child,.vsTable td:first-child{text-align:left;font-family:var(--serif)}
.vsTable td.ns{color:var(--good)}
.vsTable td.sig{color:var(--mark)}
.vsTaint .miniNote{margin:8px 0 0;font-size:13px}
.vsSub{font-size:clamp(20px,2vw,27px);letter-spacing:.1em;margin:36px 0 14px}
.vsNode{margin:0}
.vsNode figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:10px;color:var(--brown);font-size:13px}
.vsNode figcaption b{font-size:19px;font-weight:500;letter-spacing:.08em;color:var(--ink)}
.vsNode figcaption small{color:var(--muted);font-size:11px;width:100%}
.vsMultiples{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
@media(max-width:1199px){.vsMultiples{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vsMini{margin:0;border:1px solid var(--line);background:#faf6edb5;padding:14px 16px 8px}
.vsMini figcaption{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:6px}
.vsMini figcaption b{font-weight:500;font-size:14px;letter-spacing:.05em}
.vsMini figcaption span{font:12px Georgia,var(--serif);color:var(--muted);white-space:nowrap}
.vsTableView{margin-top:16px;border-block-end:1px solid var(--line);padding:12px 0}
.vsTableView summary{cursor:pointer;color:var(--brown)}
.vsTableView .vsTableWrap{max-height:380px;overflow:auto}
.vsNote{margin-top:34px;text-align:center;text-wrap:balance}
@media(max-width:900px){.vsPair{grid-template-columns:1fr}}
@media(max-width:720px){.vsMultiples{grid-template-columns:1fr}.vsTiles{grid-template-columns:repeat(2,minmax(0,1fr))}.vsTile b{font-size:19px}.vsTile.main b{font-size:21px}.vsVerdict{margin-left:0}.vsSummary{gap:10px 24px}}
