.r32-sm3 {
  --r32-ink: var(--text, #172234);
  --r32-muted: var(--muted, #5e6b7c);
  --r32-border: var(--border, #d9e1eb);
  --r32-panel: var(--surface-2, #f7f9fc);
  --r32-accent: #16755a;
  color: var(--r32-ink);
  display: grid;
  gap: 1rem;
  margin: 0 auto;
  max-width: 1120px;
  padding: 1rem;
}
[data-theme="dark"] .r32-sm3 { --r32-accent: #79d7b5; }
.r32-digest-heading { align-items: end; display: flex; gap: 1rem; justify-content: space-between; }
.r32-digest-heading > div > span { color: var(--r32-accent); font-size: .72rem; font-weight: 800; letter-spacing: .12em; }
.r32-digest-heading h2, .r32-digest-heading p { margin: 0; }
.r32-digest-heading h2 { font-size: clamp(1.35rem, 3vw, 2rem); }
.r32-digest-heading p, .r32-digest-note, .r32-digest-hint { color: var(--r32-muted); line-height: 1.55; }
.r32-digest-note { background: color-mix(in srgb, var(--r32-accent) 8%, var(--surface)); border: 1px solid color-mix(in srgb, var(--r32-accent) 30%, var(--r32-border)); border-radius: .75rem; padding: .75rem .9rem; }
.r32-digest-label { font-weight: 800; }
.r32-digest-tool textarea { background: var(--r32-panel); color: var(--r32-ink); border: 1px solid var(--r32-border); border-radius: .65rem; box-sizing: border-box; font: inherit; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; line-height: 1.5; min-height: 8rem; padding: .75rem; resize: vertical; width: 100%; }
.r32-digest-tool textarea[readonly] { background: var(--surface, #fff); }
.r32-digest-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.r32-digest-status { border-left: 3px solid var(--r32-accent); color: var(--r32-muted); min-height: 1.5rem; padding: .35rem .65rem; }
.r32-digest-status[data-tone="error"] { border-color: var(--danger, #bb2f3c); color: var(--danger, #982431); }
.r32-digest-status[data-tone="success"] { border-color: var(--success, #15875c); color: var(--success, #126a4a); }
.r32-digest-tool button:focus-visible, .r32-digest-tool input:focus-visible, .r32-digest-tool textarea:focus-visible { outline: 3px solid var(--focus, #3156d3); outline-offset: 2px; }
@media (max-width: 700px) { .r32-digest-heading { align-items: start; display: grid; } }
@media (prefers-reduced-motion: reduce) { .r32-digest-tool * { scroll-behavior: auto !important; transition-duration: .001ms !important; } }
.r32-sm3 .r32-digest-note { background: color-mix(in srgb, var(--r32-accent) 8%, var(--surface)); border-color: color-mix(in srgb, var(--r32-accent) 30%, var(--r32-border)); }
