.esq-connection { margin: 1.5rem 0; padding: clamp(1rem, 3vw, 1.5rem); border: 1px solid #d9cbb9; border-radius: 14px; background: #fffdf8; color: #123b63; min-width: 0; overflow-wrap: anywhere; }
.esq-connection [hidden] { display: none !important; }
.esq-connection h3 { font-size: 1.35rem; margin: 0 0 .8rem; }
.esq-connection p { line-height: 1.6; }
.esq-fields, .esq-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.esq-field { min-width: 0; }
.esq-connection label { display: block; font-weight: 700; margin: 0 0 .4rem; }
.esq-connection input:not([type="checkbox"]), .esq-connection select { box-sizing: border-box; font: inherit; width: 100%; max-width: 100%; min-width: 0; min-height: 44px; padding: .7rem; border: 1px solid #718597; border-radius: 7px; background: white; color: #123b63; }
.esq-summary { margin: 1rem 0 1.4rem; }
.esq-summary dt { font-size: .85rem; font-weight: 700; }
.esq-summary dd { margin: .2rem 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.esq-ack { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr); gap: .7rem; margin: 1.2rem 0; }
.esq-ack input { width: 1.25rem; height: 1.25rem; margin-top: .3rem; }
.esq-ack label { min-height: 44px; font-weight: 500; }
.esq-button { font: inherit; font-weight: 750; min-height: 44px; min-width: 44px; max-width: 100%; white-space: normal; padding: .8rem 1.1rem; border: 1px solid #123b63; border-radius: 9px; background: #123b63; color: white; cursor: pointer; }
.esq-button:disabled { opacity: .65; cursor: default; }
.esq-connection :focus-visible, .esq-connection-status:focus { outline: 3px solid #a85724; outline-offset: 4px; }
.esq-connection-status, #esq-status { padding: .75rem; border-left: 3px solid #123b63; background: #f3efe8; overflow-wrap: anywhere; }
.esq-connection-status:empty, #esq-status:empty { display: none; }
.esq-help { font-size: .9rem; }
.esq-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 600px) { .esq-fields, .esq-summary { grid-template-columns: minmax(0, 1fr); } .esq-button { width: 100%; } }
@media (prefers-reduced-motion: reduce) { .esq-connection * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

.esq-language{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.esq-language[hidden]{display:none!important}.esq-language .esq-button[aria-pressed="true"]{outline:2px solid #123b63;outline-offset:2px}.esq-language :focus-visible{outline:3px solid #a85724;outline-offset:4px}
