/* Scoped vanilla-JS HUX-05/HUX-10 runtime presentation. */ .hux-runtime-title { font-size: 0.875rem; margin: 0 0 0.65rem; } .hux-runtime-field { align-items: center; display: flex; flex-wrap: wrap; font-size: 0.6875rem; gap: 0.45rem; } .hux-runtime-field select, .hux-runtime-field button, .hux-runtime-actions button, .hux-runtime-stop { background: color-mix(in srgb, currentColor 4%, transparent); border: 1px solid color-mix(in srgb, currentColor 18%, transparent); border-radius: 0.5rem; color: inherit; font: inherit; min-height: 2rem; padding: 0.35rem 0.55rem; } .hux-runtime-field button, .hux-runtime-actions button, .hux-runtime-stop { cursor: pointer; } .hux-runtime-field button:focus-visible, .hux-runtime-field select:focus-visible, .hux-runtime-actions button:focus-visible, .hux-runtime-stop:focus-visible { outline: 2px solid #22d3ee; outline-offset: 2px; } .hux-runtime-approval, .hux-runtime-receipt, .hux-runtime-notice { border: 1px solid color-mix(in srgb, currentColor 13%, transparent); border-radius: 0.65rem; margin-top: 0.55rem; padding: 0.6rem; } .hux-runtime-approval.risk-high { border-color: color-mix(in srgb, #fb7185 48%, currentColor); } .hux-runtime-approval p, .hux-runtime-notice p, .hux-runtime-minimize, .hux-runtime-status { color: color-mix(in srgb, currentColor 66%, transparent); font-size: 0.6875rem; line-height: 1.45; margin: 0.25rem 0; } .hux-runtime-actions { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.5rem; } .hux-runtime-actions button:last-child, .hux-runtime-stop { border-color: color-mix(in srgb, #fb7185 42%, currentColor); } .hux-runtime-receipt { border-color: color-mix(in srgb, #22d3ee 42%, currentColor); } .hux-runtime-receipt h3, .hux-runtime-notice h3 { font-size: 0.75rem; margin: 0; } .hux-runtime-receipt ul { font-size: 0.6875rem; margin: 0.35rem 0 0; padding-left: 1.2rem; } .hux-runtime-summary { display: grid; gap: 0.4rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; } .hux-runtime-summary div { border-bottom: 1px solid color-mix(in srgb, currentColor 10%, transparent); padding: 0.3rem 0; } .hux-runtime-summary dt { color: color-mix(in srgb, currentColor 58%, transparent); font-size: 0.625rem; } .hux-runtime-summary dd { font-size: 0.6875rem; margin: 0.1rem 0 0; } .hux-runtime-notice { background: color-mix(in srgb, #22d3ee 5%, transparent); border-color: color-mix(in srgb, #22d3ee 30%, currentColor); } /* Inline approval prompts: a fixed dock near the composer so parked tool calls surface in the chat flow instead of hiding in the drawer. */ .hux-runtime-inline-dock { bottom: 6.5rem; display: flex; flex-direction: column; gap: 0.45rem; left: 0; margin: 0 auto; max-height: 50vh; max-width: 44rem; overflow-y: auto; padding: 0 0.75rem; pointer-events: none; position: fixed; right: 0; z-index: 60; } .hux-runtime-inline-dock[hidden] { display: none; } .hux-runtime-inline-title { align-self: flex-start; background: Canvas; border: 1px solid color-mix(in srgb, currentColor 18%, transparent); border-radius: 999px; color: CanvasText; font-size: 0.625rem; margin: 0; padding: 0.15rem 0.6rem; } .hux-runtime-approval.hux-runtime-inline-card { background: Canvas; box-shadow: 0 0.5rem 1.5rem rgb(0 0 0 / 0.25); color: CanvasText; margin-top: 0; pointer-events: auto; } @container (max-width: 34rem) { .hux-runtime-summary { grid-template-columns: 1fr; } } @media (prefers-reduced-motion: reduce) { .hux-runtime-field *, .hux-runtime-actions * { scroll-behavior: auto; } }