/* Compact request card: provider, question, disclosure and one-time actions. */
.chat-consent { max-width:620px; border:1px solid var(--line); border-radius:14px; background:var(--surface); padding:16px 18px; color:var(--ink); white-space:normal }
.chat-consent-provider { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:.77rem; line-height:1.4; margin-bottom:7px; overflow-wrap:anywhere }
.chat-consent-provider .icon { width:16px; height:16px; flex:none }
.chat-consent h3 { margin:0 0 4px; font:550 .96rem/1.4 var(--font); letter-spacing:-.015em; text-wrap:balance }
.chat-consent p { font-size:.8rem; line-height:1.5; margin:0; color:var(--muted); max-width:65ch; overflow-wrap:anywhere }
.chat-consent-details { margin-top:4px; font-size:.78rem; line-height:1.5 }
.chat-consent-details>summary { width:fit-content; min-height:24px; display:flex; align-items:center; list-style:none; cursor:pointer; text-decoration:underline; text-underline-offset:3px; border-radius:4px }
.chat-consent-details>summary::-webkit-details-marker { display:none }
.chat-consent-details[open]>summary { margin-bottom:8px }
.chat-consent-details [data-consent-full-question] { margin-bottom:10px }
.chat-consent-accounts { margin:8px 0 12px }
.chat-consent-account { display:flex; gap:10px; align-items:center; padding:8px 0; min-width:0; margin:0; font-weight:400 }
.chat-consent-account+.chat-consent-account { border-top:1px solid var(--line) }
.chat-consent-account:has(input) { cursor:pointer }
.chat-consent-account input { width:18px; height:18px; flex:0 0 18px; accent-color:var(--accent) }
.chat-consent-identity { display:grid; gap:2px; min-width:0; overflow-wrap:anywhere }
.chat-consent-identity strong { font-size:.8rem; font-weight:550 }
.chat-consent-identity>span { font-size:.78rem; color:var(--muted) }
.chat-consent-identity small { font-size:.72rem; color:var(--muted) }
.chat-consent-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 14px; margin-top:12px }
.chat-consent-account-label { min-width:0; flex:1 1 140px; font-size:.72rem; line-height:1.5; color:var(--muted); overflow-wrap:anywhere }
.chat-consent-actions { display:flex; align-items:center; gap:7px; margin-left:auto; flex:none }
.chat-consent-actions button { min-height:36px; padding:7px 12px; border-radius:999px; font-size:.78rem; line-height:1.4; margin:0; transform:none; transition:none; box-shadow:none }
.chat-consent-actions .primary { background:var(--ink); color:var(--surface); border:1px solid transparent }
.chat-consent-actions .secondary { background:var(--surface-2); border:1px solid var(--line); color:var(--ink) }
.chat-consent-actions button .icon { width:14px; height:14px }
.chat-consent-actions button:disabled { opacity:.5; cursor:not-allowed }
.chat-consent-status:empty { display:none }
.chat-consent .chat-consent-status { margin-top:10px; color:var(--ink) }
.chat-consent [hidden] { display:none }
.chat-consent :focus-visible { outline:2px solid var(--accent); outline-offset:3px }
.chat-consent h3:focus:not(:focus-visible) { outline:none }
.chat-consent[data-state] h3,.chat-consent[data-state] [data-consent-description],.chat-consent[data-state] details,.chat-consent[data-state]>.chat-consent-accounts { display:none }
.chat-consent[data-state] .chat-consent-footer { margin-top:0 }
.chat-consent[data-state=error] .chat-consent-status { color:var(--danger) }
.action-details time { display:block }
.action-exact-time { display:block; font-size:.73rem; color:var(--muted); margin-top:6px; overflow-wrap:anywhere }
@media(hover:hover) and (pointer:fine) { .chat-consent-actions .primary:hover:not(:disabled) { opacity:.84 } .chat-consent-actions .secondary:hover:not(:disabled) { background:var(--surface) } }
@media(max-width:760px) { .chat-consent { padding:14px; border-radius:12px } .chat-consent-actions button { min-height:44px; padding:9px 13px } .chat-consent-details>summary { min-height:44px } .chat-consent-account:has(input) { min-height:44px } }
/* VectorXS 0.12.2: Chat-scoped connected-app consent action. */
.chat-consent-actions { flex-wrap:wrap; justify-content:flex-end; }
.chat-consent-actions [data-consent-allow-chat] { color:var(--accent); background:var(--accent-soft); border-color:var(--accent); }
.chat-consent-actions [data-consent-allow-chat][hidden] { display:none; }
@media(max-width:500px) { .chat-consent-account-label { flex-basis:100%; } .chat-consent-actions { width:100%; margin:0; } }

