#vcc-root [hidden] { display: none !important; }
#vcc-root .vcc-overlay { position: fixed; inset: 0; z-index: 2147483000; background: rgba(0,0,0,.45); display: flex; align-items: flex-end; justify-content: center; padding: 20px; }
#vcc-root .vcc-dialog { box-sizing: border-box; position: relative; width: 760px; max-width: 100%; max-height: 90vh; overflow: auto; background: #fff; color: #222; border-radius: 8px; padding: 28px; box-shadow: 0 6px 32px rgba(0,0,0,.25); font-size: 15px; line-height: 1.5; }
#vcc-root h2 { margin: 0 35px 16px 0; font-size: 23px; }
#vcc-root a { color: #164d73; text-decoration: underline; }
#vcc-root .vcc-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
#vcc-root .vcc-actions button { flex: 1 1 170px; padding: 11px 14px; border: 1px solid #333; background: #fff; color: #222; border-radius: 4px; font-weight: 600; min-height: 44px; box-shadow: none; }
#vcc-root button:focus-visible, #vcc-root a:focus-visible, #vcc-root input:focus-visible { outline: 3px solid #176994; outline-offset: 3px; }
#vcc-root .vcc-close { position: absolute; top: 9px; right: 9px; width: 44px; height: 44px; padding: 0; background: #fff; color: #222; border: 0; font-size: 28px; box-shadow: none; }
#vcc-root .vcc-details label { display: block; margin: 15px 0; cursor: pointer; }
#vcc-root .vcc-details input { margin-right: 7px; }
#vcc-root .vcc-error { color: #9b1b1b; }
#vcc-root .vcc-reopen { position: fixed; bottom: 12px; left: 12px; z-index: 9990; padding: 9px 13px; background: #fff; color: #222; border: 1px solid #555; border-radius: 4px; min-height: 44px; }
#vcc-root .vcc-receipt { font-size: 12px; overflow-wrap: anywhere; }
#vcc-root .vcc-status { position: fixed; bottom: 65px; left: 12px; z-index: 9990; max-width: 320px; padding: 12px; background: #fff; color: #222; border: 1px solid #555; border-radius: 4px; }
@media (max-width: 600px) { #vcc-root .vcc-overlay { padding: 8px; } #vcc-root .vcc-dialog { padding: 22px 18px; } }
