/* Shared arrow pads for corporate pages and forum sections. */
.action-icon {
    display:inline-grid; place-items:center; flex:none; vertical-align:middle;
    width:var(--action-size,2.75rem); height:var(--action-size,2.75rem);
    border:1px solid var(--action-border,color-mix(in srgb,currentColor 12%,transparent));
    border-radius:.875rem; color:var(--action-ink,var(--plus-ink,var(--forum-text,#142e3b)));
    background:var(--action-surface,color-mix(in srgb,white 88%,var(--plus-accent,var(--forum-primary,#c8a66c))));
    box-shadow:inset 0 1px 0 #ffffffb3,0 .2rem .65rem #142e3b08;
    transition:background .2s,border-color .2s,box-shadow .2s;
}
.action-icon svg { width:1.375rem; height:1.375rem; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.action-icon-up svg { transform:rotate(-45deg); }
.action-icon-down svg { transform:rotate(135deg); }
.action-icon-back svg { transform:rotate(-135deg); }
:where(a,button):is(:hover,:focus-visible) .action-icon {
    background:var(--action-hover,color-mix(in srgb,white 68%,var(--plus-accent,var(--forum-primary,#c8a66c))));
    border-color:color-mix(in srgb,currentColor 24%,transparent); box-shadow:inset 0 1px 0 #ffffffb3,0 .25rem .75rem #142e3b12;
}
.action-link,.contact-grid .action-link,.speaker-grid .action-link { display:inline-flex; align-items:center; justify-content:space-between; gap:.75rem; max-width:100%; }
.directions { --action-size:3.25rem; }
.directions .action-icon { --action-ink:var(--plus-energy); --action-surface:#fff; }
.text-link { gap:1rem; }
.archive-link h3:has(.action-icon) { display:flex; justify-content:space-between; align-items:center; gap:.75rem; }
/* Filled buttons already supply the pad; the arrow stays inside that surface. */
:is(.button,.forum-button) .action-icon {
    --action-size:1.5rem; --action-surface:transparent; --action-hover:transparent;
    color:inherit; border:0; border-radius:0; box-shadow:none;
}
@media(prefers-reduced-motion:reduce) { .action-icon { transition:none; } }
