#ivy-lead-chat-root { --ivy-ink:#142d35; --ivy-green:#117e69; --ivy-surface:#fff; --ivy-muted:#51636b; position:fixed; z-index:99999; right:20px; bottom:20px; font:14px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ivy-ink) }
#ivy-lead-chat-root * { box-sizing:border-box }
#ivy-lead-chat-root button,#ivy-lead-chat-root input,#ivy-lead-chat-root select,#ivy-lead-chat-root textarea { font:inherit }
#ivy-lead-chat-root button { cursor:pointer }
#ivy-lead-chat-root button:focus-visible,#ivy-lead-chat-root input:focus-visible,#ivy-lead-chat-root select:focus-visible,#ivy-lead-chat-root textarea:focus-visible,#ivy-lead-chat-root a:focus-visible { outline:3px solid #e2a622; outline-offset:2px }
#ivy-lead-chat-root [hidden] { display:none!important }
.ivy-chat-launch { display:flex; gap:9px; align-items:center; border:0; border-radius:28px; padding:13px 18px; background:#117e69; color:#fff; font-weight:700!important; box-shadow:0 5px 20px #142d3533; margin-left:auto }
.ivy-chat-launch:hover,.ivy-chat-submit:hover { background:#0b6353 }
.ivy-chat-launch-icon { font-size:18px }
.ivy-chat-panel { width:min(370px,calc(100vw - 24px)); height:min(570px,calc(100dvh - 90px)); margin-bottom:12px; display:flex; flex-direction:column; overflow:hidden; border:1px solid #dce5e4; border-radius:15px; background:#fff; box-shadow:0 12px 35px #142d3538 }
.ivy-chat-header { padding:15px 17px; background:#142d35; color:#fff; display:flex; justify-content:space-between; align-items:center }
.ivy-chat-header strong,.ivy-chat-header small { display:block }
.ivy-chat-header strong { font-size:16px }
.ivy-chat-header small { opacity:.8; margin-top:2px }
.ivy-chat-close { border:0; color:#fff; background:transparent; font-size:27px!important; line-height:1; min-width:40px; min-height:40px }
.ivy-chat-scroll { padding:16px; flex:1; overflow-y:auto; overscroll-behavior:contain }
.ivy-chat-messages { display:flex; flex-direction:column; gap:10px }
.ivy-chat-message { max-width:88%; margin:0!important; padding:10px 12px; border-radius:11px; line-height:1.45 }
.ivy-chat-college { background:#eef5f2; align-self:flex-start }
.ivy-chat-visitor { background:#117e69; color:#fff; align-self:flex-end }
.ivy-chat-actions { display:flex; gap:8px; flex-wrap:wrap; padding-top:16px }
.ivy-chat-actions button { padding:8px 11px; border:1px solid #a2c6bc; border-radius:18px; background:#fff; color:#075c4c; font-weight:600 }
.ivy-chat-actions button:hover { background:#eef5f2 }
.ivy-chat-form { margin-top:17px; border-top:1px solid #dce5e4; padding-top:15px }
.ivy-chat-form h3 { font-size:17px; margin:0 0 4px }
.ivy-chat-form p { margin:0 0 14px; color:#51636b }
.ivy-chat-form label:not(.ivy-chat-consent) { display:block; margin:0 0 10px; font-weight:600 }
.ivy-chat-form input:not([type=checkbox]),.ivy-chat-form select,.ivy-chat-form textarea { display:block; width:100%; min-height:40px; margin-top:4px; padding:8px 9px; border:1px solid #9aaab0; border-radius:6px; background:#fff; color:#142d35 }
.ivy-chat-form textarea { resize:vertical }
.ivy-chat-hint { display:block; color:#51636b; margin:-6px 0 12px }
.ivy-chat-consent { display:flex; align-items:flex-start; gap:8px; margin:12px 0 5px; font-size:13px }
.ivy-chat-consent input { flex:none; margin:3px 0 0 }
.ivy-chat-privacy a { color:#075c4c; font-size:13px; text-decoration:underline }
.ivy-chat-honey { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden }
.ivy-chat-error { color:#a22c20; margin:8px 0; font-weight:600 }
.ivy-chat-submit { width:100%; border:0; border-radius:7px; background:#117e69; color:#fff; font-weight:700!important; padding:11px; margin-top:9px }
.ivy-chat-submit:disabled { opacity:.65; cursor:wait }
.ivy-chat-footer { border-top:1px solid #e3ebe9; padding:9px; text-align:center; color:#51636b; font-size:12px }
@media(max-width:480px) { #ivy-lead-chat-root { right:12px; bottom:12px } .ivy-chat-panel { width:calc(100vw - 24px); height:min(590px,calc(100dvh - 85px)) } }
