/* R31 QA01 · Editorial quality + multidispositivo closeout */
:root{--r31-panel:#f8fbff;--r31-border:#d8e5f2;--r31-ink:#10264d;--r31-muted:#61728a}
.r31-quality-panel{margin-top:1rem;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.r31-quality-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:.8rem 0 1rem}.r31-quality-summary article{padding:1rem;border:1px solid var(--r31-border);border-radius:14px;background:#fff}.r31-quality-summary strong{display:block;font-size:1.55rem;color:var(--r31-ink)}.r31-quality-summary span{font-size:.76rem;color:var(--r31-muted)}
.r31-quality-toolbar{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:.8rem;align-items:end;margin-bottom:1rem}.r31-quality-toolbar label{display:grid;gap:.35rem;font-weight:750;color:var(--r31-ink)}
.r31-quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.r31-quality-card{display:flex;min-width:0;flex-direction:column;gap:.65rem;padding:1rem;border:1px solid var(--r31-border);border-radius:14px;background:#fff}.r31-quality-card h4{margin:0;color:var(--r31-ink);font-size:1rem;line-height:1.35}.r31-quality-card p{margin:0;color:var(--r31-muted);line-height:1.5;font-size:.86rem}.r31-quality-card .btn-row{margin-top:auto}
.r31-quality-badge{display:inline-flex;align-items:center;min-height:28px;padding:.25rem .55rem;border-radius:999px;background:#edf4ff;color:#2457dc;font-size:.72rem;font-weight:850}
.r23-question .r31-source-note{display:inline-flex;margin:.35rem 0;color:#64748b;font-size:.75rem}
/* Tables and toolbars never force the whole viewport to scroll horizontally. */
.table-wrap,.r23-table-wrap,.mailbox-list,.contract-library-list,.audit-list{max-width:100%}.table-wrap,.r23-table-wrap{overflow:auto;overscroll-behavior-inline:contain}
/* Fixed controls leave room for safe areas and small screens. */
.ac-floating-doc-link{bottom:max(16px,env(safe-area-inset-bottom))!important;right:max(16px,env(safe-area-inset-right))!important}
/* Mobile navigation keeps controls visible without hidden side overflow. */
@media(max-width:900px){.tabs,.command-tabs{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.tabs>.tab,.command-tabs>.tab{flex:0 0 auto}.r31-quality-grid{grid-template-columns:1fr}.r31-quality-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.r31-quality-toolbar{grid-template-columns:1fr}.r31-quality-summary{grid-template-columns:1fr 1fr}.r31-quality-card .btn-row{display:grid;grid-template-columns:1fr}.r31-quality-card .btn{width:100%}.r28-toolbar{grid-template-columns:1fr!important}.r28-resource-card,.r28-event-card{grid-template-columns:1fr!important}.r28-resource-actions,.r28-event-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.r28-resource-actions .btn,.r28-event-actions .btn{width:100%}}
@media(max-width:390px){.r31-quality-summary{grid-template-columns:1fr}.r28-resource-actions,.r28-event-actions{grid-template-columns:1fr}.top-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}.top-actions>*{width:100%!important;min-width:0!important}.role-context{flex-wrap:wrap}.r23-exam-meta{display:grid!important;grid-template-columns:1fr!important}}
@media(max-height:520px) and (orientation:landscape){.r23-course-top{position:static!important}.r23-classroom{padding-top:.5rem!important}.r23-side{max-height:none!important}.runner-wrap,[role=dialog]{max-height:96dvh!important;overflow:auto!important}}
