:root{--size-3:1rem;--size-2:.5rem;--size-1:.25rem;--font-size-0:.75rem;--radius-2:5px;--font-size-2:1.1rem;--size-4:1.25rem;--font-weight-6:600}.chat{flex-direction:column;flex:1;min-block-size:0;display:flex}.messages{padding:var(--size-3);flex:1;overflow-y:auto}.input-row{gap:var(--size-2);padding:var(--size-3);border-block-start:1px solid var(--surface-3);display:flex}.input-row input{padding:var(--size-2);flex:1}.input-row button{flex-shrink:0}.role{text-decoration:underline}.reconnecting{text-align:center;padding:var(--size-1);font-size:var(--font-size-0);color:var(--text-2);margin:0}.msg p{margin-block-start:var(--size-1)}.bot-avatar{text-align:center;padding:0}.bot-avatar img{border-radius:var(--radius-2);block-size:auto;inline-size:min(90%,350px)}.consent-hi{padding:var(--size-2) var(--size-3);border:1px solid var(--btn-border);border-radius:var(--radius-2);background:var(--btn-bg);color:var(--btn-text);cursor:pointer;font:inherit;font-size:var(--font-size-2,1.125rem);-webkit-appearance:none;appearance:none;flex:1}.consent-hi[disabled]{opacity:.6;cursor:progress}.chat-menu{align-items:flex-start;gap:var(--size-3);margin:var(--size-2) 0 0;padding:0 var(--size-3);flex-direction:column;list-style:none;display:flex}.chat-menu button{font:inherit;color:var(--link);text-underline-offset:.2em;cursor:pointer;text-align:start;background:0 0;border:none;padding:0;text-decoration:underline}.consent-fieldset{border:1px solid var(--surface-3);border-radius:var(--radius-2);background:var(--surface-2);padding:var(--size-3);margin:var(--size-3) 0 0}.action-buttons{gap:var(--size-2);margin-block-start:var(--size-3);display:flex}.action-buttons button,.action-buttons .action-link{padding:var(--size-2) var(--size-3);border:1px solid var(--btn-border);border-radius:var(--radius-2);background:var(--btn-bg);color:var(--btn-text);cursor:pointer;font:inherit;text-decoration:none}.action-buttons button.loading{opacity:.7;cursor:wait;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.7}50%{opacity:.4}}.consent-legal{font-size:var(--font-size-0,.875rem);color:var(--text-2);padding-block-start:var(--size-4)}.email-capture-error,.otp-capture-error{background:var(--error-bg);color:var(--error-text);font-weight:var(--font-weight-6,600);border:1px solid var(--error-border);border-radius:var(--radius-2,.25rem);padding:var(--size-2,.5rem) var(--size-3,.75rem);margin:0 0 var(--size-2,.5rem)}.email-capture-error:before,.otp-capture-error:before{content:"⚠️ "}.email-capture-success{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border);border-radius:var(--radius-2,.25rem);padding:var(--size-2,.5rem) var(--size-3,.75rem);font-weight:var(--font-weight-6,600);margin:0 0 var(--size-2,.5rem)}.email-capture-success:before{content:"✉️ "}.otp-capture-notice{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border);border-radius:var(--radius-2,.25rem);padding:var(--size-2,.5rem) var(--size-3,.75rem);font-weight:var(--font-weight-6,600);margin:0 0 var(--size-2,.5rem)}.otp-capture-notice:before{content:"✉️ "}.otp-resend{color:var(--text-2);cursor:pointer;font:inherit;background:0 0;border:none;text-decoration:underline}.cv-upload{padding:var(--size-2,.5rem) 0}.cv-upload-btn{padding:var(--size-2,.5rem) var(--size-3,.75rem);border:1px solid var(--btn-border);border-radius:var(--radius-2,.25rem);background:var(--btn-bg);color:var(--btn-text);cursor:pointer;font:inherit;display:inline-block}.cv-upload-btn:hover{border-color:var(--brand)}.cv-upload-hint{font-size:var(--font-size-0,.875rem);color:var(--text-2);margin:var(--size-1,.25rem) 0 0}:root{--size-3:1rem;--size-2:.5rem}[data-platform=ios] .content{padding-inline:var(--size-3);overscroll-behavior:contain;min-height:0;padding-block-end:80px;overflow-y:auto}[data-platform=ios] .footer{top:calc(var(--vvh,100vh) + var(--vvt,0px));background:var(--surface-1);border-block-start:1px solid var(--surface-3);gap:var(--size-2);width:100%;padding-block:10px calc(10px + var(--vvs,0px));padding-inline:var(--size-3);z-index:10;touch-action:none;will-change:transform;transition:top .25s;display:flex;position:fixed;left:0;transform:translateY(-100%)}[data-platform=ios] .footer .input-row{gap:var(--size-2);border-block-start:none;flex:1;padding:0;display:flex}[data-platform=ios] .footer input{touch-action:none;flex:1}@keyframes ios-blink{0%{opacity:0}to{opacity:1}}[data-platform=ios] .footer input:focus{animation:20ms ios-blink}
