.pr-hub{max-width:940px;margin:0 auto}.pr-hub .pr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pr-hub .pr-card{padding:22px;border:1px solid var(--line,var(--hair,var(--color-hairline-dark)));border-radius:var(--r,16px);background:var(--card,var(--surface,var(--color-surface-dark)));min-width:0}.pr-hub .pr-card h2{font-size:var(--type-20);margin:0 0 20px}.pr-hub .pr-value{display:block;font-size:var(--type-44);line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.pr-hub .pr-value small{font-size:var(--type-16);font-weight:400;margin-left:5px}.pr-hub .pr-meta{font-size:var(--type-14);line-height:1.6;margin:12px 0 20px;color:var(--muted)}.pr-hub .pr-actions{display:flex;gap:8px;flex-wrap:wrap}.pr-hub .pr-actions .btn{min-height:44px}.pr-hub .pr-board-link{margin:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border:1px solid var(--line,var(--hair,var(--color-hairline-dark)));border-radius:var(--r,16px)}.pr-hub .pr-board-link p{margin:5px 0;color:var(--muted)}.pr-dialog .sheet{max-width:640px;max-height:92dvh;overflow:auto}.pr-dialog .pr-history{display:grid;gap:10px;padding:0;list-style:none}.pr-dialog .pr-history li{padding:14px;border:1px solid var(--line,var(--hair,var(--color-hairline-dark)));border-radius:12px}.pr-dialog .pr-history b{font-variant-numeric:tabular-nums;font-size:var(--type-20)}.pr-dialog .pr-history p{margin:5px 0 12px}.pr-dialog .pr-form{display:grid;gap:14px}.pr-dialog .pr-status{min-height:1.5em}.pr-dialog video{display:block;max-width:100%;max-height:58dvh;background:var(--color-ink);border-radius:12px}.pr-dialog .pr-close{float:right;margin-left:14px}.pr-hub button:focus-visible,.pr-dialog button:focus-visible{outline:2px solid var(--amber);outline-offset:3px}@media(max-width:700px){.pr-hub .pr-grid{grid-template-columns:1fr}.pr-hub .pr-card{padding:18px}.pr-hub .pr-value{font-size:var(--type-44)}.pr-hub .pr-board-link{display:block}.pr-hub .pr-board-link .btn{margin-top:12px}}

/* Dialog actions retain the same spacing and touch targets as PR cards. */
.pr-dialog .pr-actions{display:flex;flex-wrap:wrap;gap:8px}.pr-dialog .pr-actions>.btn{min-height:44px;min-width:44px}
