/* Luna 2.1.1. Desktop presentation is deliberately outside this stylesheet. */
.luna-mobile-wave,.luna-mobile-label{display:none}
@media(max-width:780px){
 .tk-assistant-launch,.tk-assistant-launch:not(.luna-compact){right:16px!important;left:auto!important;top:auto!important;bottom:calc(88px + env(safe-area-inset-bottom))!important;width:min(306px,calc(100vw - 40px));height:auto;padding:20px 18px;gap:14px;align-items:center;border:1px solid #ffffffd9;border-radius:24px 24px 8px 24px;background:linear-gradient(135deg,#fffdf7,#eef3ed);color:#193b35;box-shadow:0 16px 45px #102b3230,0 2px 6px #102b3210;transform:none;isolation:isolate;text-align:start;font-family:inherit}
 .tk-assistant-launch:hover{transform:none;background:linear-gradient(135deg,#fffdf7,#eef3ed);border-color:#fff;box-shadow:0 16px 45px #102b3230}
 .tk-assistant-launch .tk-spark,.tk-assistant-launch:not(.luna-compact) .tk-spark{position:relative;width:58px;height:64px;overflow:visible;border-radius:18px;background:#d9e4dc;border:2px solid #fff;box-shadow:0 4px 14px #193b351a;touch-action:manipulation;cursor:pointer}
 .tk-assistant-launch .tk-spark img{border-radius:16px;object-position:center 35%}
 .tk-assistant-launch .luna-launch-copy{min-width:0;gap:5px;flex:1}
 .tk-assistant-launch .luna-launch-copy small{display:none}
 .tk-assistant-launch .luna-launch-copy strong{font-family:inherit;font-size:20px;font-weight:600;line-height:1.15;letter-spacing:-.035em;color:#173c33}
 .tk-assistant-launch .luna-launch-copy>span{font-size:12px!important;line-height:1.45!important;color:#607369}
 .tk-assistant-launch .luna-launch-copy b{border-top:1px solid #193b3517;margin-top:5px;padding-top:9px;font-size:13px;line-height:1.3;color:#244d40;gap:8px}
 .tk-assistant-launch .luna-launch-copy b svg{width:24px;height:24px;padding:4px;border-color:#9aafa044;background:#ffffff80;color:#315b48}
 .luna-launch-dismiss{display:none!important}
 .tk-assistant-launch .luna-mobile-wave{display:grid;place-items:center;position:absolute;bottom:-5px;right:-9px;width:30px;height:30px;border-radius:50%;background:#fffaf0;border:1px solid #eadcc6;box-shadow:0 3px 8px #18362e14;font-size:20px;line-height:1;transform-origin:70% 80%}
 .tk-assistant-launch.luna-mobile-pending{visibility:hidden;opacity:0;pointer-events:none}
 .tk-assistant-launch.luna-mobile-docked,.tk-assistant-launch.luna-compact{right:-4px!important;width:56px;height:68px;padding:7px 8px 6px 5px;gap:3px;flex-direction:column;justify-content:center;align-items:center;border-radius:18px 0 0 18px;background:#f8faf5;border-color:#cedbd2;box-shadow:0 3px 18px #14362d1c;cursor:pointer;touch-action:manipulation}
 .tk-assistant-launch.luna-mobile-docked .tk-spark,.tk-assistant-launch.luna-compact .tk-spark{width:36px;height:36px;border-radius:50%;border:1px solid #fff;box-shadow:none}
 .tk-assistant-launch.luna-mobile-docked .tk-spark img,.tk-assistant-launch.luna-compact .tk-spark img{border-radius:50%}
 .tk-assistant-launch.luna-mobile-docked .luna-launch-copy,.tk-assistant-launch.luna-compact .luna-mobile-wave{display:none}
 .tk-assistant-launch.luna-mobile-docked .luna-mobile-label{display:block;font:600 10px/1.1 system-ui;letter-spacing:.015em;color:#365445}
 .tk-assistant-launch.luna-mobile-docked:focus-visible{outline:3px solid #a37a52;outline-offset:-3px}
 .tk-assistant-launch.luna-mobile-docked:hover{right:0!important;background:#fffdf5}
 .luna-is-open .tk-assistant-launch{visibility:hidden;pointer-events:none}
 .tk-assistant,.tk-assistant.luna-window-positioned{position:fixed;inset:auto 10px calc(80px + env(safe-area-inset-bottom)) 10px!important;margin:0!important;width:calc(100vw - 20px);max-width:none;height:min(660px,calc(100dvh - 104px - env(safe-area-inset-bottom)));max-height:calc(100dvh - 104px - env(safe-area-inset-bottom));border:1px solid #dce5dc;border-radius:24px;background:#f6f7f2;box-shadow:0 20px 70px #102b3240;transform:none!important}
 .tk-assistant .tk-chat-header{padding:18px;gap:12px;background:linear-gradient(120deg,#183c35,#2e5346);color:#f6f7ef;cursor:default;touch-action:auto;border:0}
 .tk-assistant .tk-chat-header .tk-chat-avatar{width:46px;height:46px;border:1px solid #dcebd34d;border-radius:50%;background:#bbcabc}
 .tk-assistant .tk-chat-header h2{font-size:24px;line-height:1.15;color:#fffdf2}
 .tk-assistant .tk-chat-header p{color:#dae7dc;font-size:12px!important;line-height:1.5}
 .tk-assistant .tk-chat-header .tk-chat-close{width:44px;height:44px;flex-shrink:0;margin-inline-start:auto;border:1px solid #e1ecdd38;background:#ffffff12;color:#fffdf2}
 .tk-assistant .tk-chat-body{background:#f6f7f2;padding:22px 18px}
 .tk-assistant .tk-chat-body [data-chat-intro]>h3{font-size:34px;line-height:1.08;color:#213e34;letter-spacing:-.045em;margin:15px 0 18px}
 .tk-assistant .tk-chat-body .eyebrow{color:#92714d}
 .tk-assistant .tk-ai-notice{border:1px solid #dce4d9;border-radius:15px;background:#fffef9;color:#526459}
 .tk-assistant .tk-chat-body .button{background:#234d3f;color:#fffdf3;border-radius:13px;box-shadow:none;font-size:15px}
 .tk-assistant .tk-chat-body .tk-secondary{border-color:#cad7ca;color:#315345;border-radius:13px;background:#fffef9}
 .tk-assistant .tk-quick-questions button{border-color:#d9e2d7;background:#fffef9;color:#294a3c;border-radius:13px}
 .tk-assistant .tk-bubble.assistant{background:#fffefb;border:1px solid #e0e6dc;box-shadow:none;color:#294538}
 .tk-assistant .tk-bubble.user{background:#e6ede2;border-color:#d0dfca;color:#244334}
 .tk-assistant .tk-chat-composer{border-color:#cfdccc;background:#fffefb;border-radius:15px;box-shadow:none}
 .tk-assistant .tk-chat-footer,.tk-assistant .tk-chat-return-bar{background:#edf1e9;border-color:#dce4d7;color:#526653}
 .tk-assistant .tk-chat-return-bar button{color:#315345}
 .tk-assistant .tk-chat-footer a{color:#526653}
 .tk-assistant :focus-visible{outline-color:#a37a52}
}
@media(max-width:780px) and (prefers-reduced-motion:no-preference){
 .tk-assistant-launch.luna-mobile-greeting{animation:luna-mobile-pop .55s cubic-bezier(.18,.85,.25,1.15) both;transform-origin:100% 80%}
 .luna-mobile-greeting .luna-mobile-wave{animation:luna-mobile-wave .9s .4s ease-in-out 1 both}
 .tk-assistant-launch.luna-mobile-exit{animation:luna-mobile-away .38s cubic-bezier(.55,0,.8,.35) both}
 .tk-assistant-launch.luna-mobile-docked{animation:luna-mobile-tab .25s ease-out both}
 @keyframes luna-mobile-pop{0%{opacity:0;transform:translateX(40px) scale(.88)}65%{opacity:1;transform:translateX(-4px) scale(1.025)}100%{opacity:1;transform:none}}
 @keyframes luna-mobile-wave{0%,100%{transform:rotate(0)}20%{transform:rotate(22deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(18deg)}80%{transform:rotate(-8deg)}}
 @keyframes luna-mobile-away{to{opacity:0;transform:translateX(calc(100% + 24px)) scale(.96)}}
 @keyframes luna-mobile-tab{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:none}}
}
@media(max-width:780px) and (prefers-reduced-motion:reduce){.tk-assistant-launch,.tk-assistant-launch .luna-mobile-wave,.tk-assistant[open]{animation:none!important;transition:none!important}}

/* Matching mobile accessibility tab, always reachable at the left edge. */
.a11y-mobile-label{display:none}
@media(max-width:780px){
 #tk-accessibility{left:14px;top:auto;bottom:calc(88px + env(safe-area-inset-bottom));width:52px;height:68px}
 #tk-accessibility .a11y-dismiss{display:none}
 #tk-accessibility .a11y-launch{width:52px;height:52px;padding:0;border:1px solid #d5dfd1;border-radius:18px;background:linear-gradient(135deg,#fffdf7,#edf3e9);color:#2a5142;box-shadow:0 6px 24px #15362d20}
 #tk-accessibility .a11y-mobile-label{display:block;position:absolute;left:62px;top:7px;padding:9px 13px;border:1px solid #e0e5d9;border-radius:12px;background:#fffdf6;box-shadow:0 5px 20px #15362d16;color:#315345;font:600 13px/1.5 system-ui;white-space:nowrap;pointer-events:none}
 #tk-accessibility.a11y-mobile-pending{visibility:hidden;pointer-events:none}
 #tk-accessibility.a11y-mobile-docked{left:-4px;width:56px;height:68px}
 #tk-accessibility.a11y-mobile-docked .a11y-launch{width:56px;height:68px;border-radius:0 18px 18px 0;box-shadow:0 3px 18px #14362d1c;padding-left:4px;background:#f8faf5}
 #tk-accessibility.a11y-mobile-docked .a11y-mobile-label{display:none}
 #tk-accessibility .a11y-launch:focus-visible{outline-color:#a37a52;outline-offset:-3px}
 #a11y-panel{left:12px;bottom:calc(164px + env(safe-area-inset-bottom));width:calc(100vw - 24px);max-height:calc(100dvh - 186px - env(safe-area-inset-bottom));padding:20px;border:1px solid #dce4d7;border-radius:20px;background:#fffef9;box-shadow:0 16px 55px #12332a30}
 #a11y-panel h2{color:#244a3c}
 #a11y-panel [data-a11y-close]{width:44px;height:44px;background:#edf2e9;color:#315345}
 #a11y-panel .a11y-options button,#a11y-panel .a11y-size button{border-color:#d5dfcf;background:#f8faf4;color:#315345;border-radius:11px}
 #a11y-panel .a11y-options button[aria-pressed=true]{background:#264c3e;color:#fffef4;border-color:#264c3e}
 #a11y-panel .a11y-reset{background:#edf2e8;color:#315345}
}
@media(max-width:780px) and (prefers-reduced-motion:no-preference){
 #tk-accessibility.a11y-mobile-greeting{animation:a11y-mobile-pop .55s cubic-bezier(.18,.85,.25,1.15) both}
 #tk-accessibility.a11y-mobile-exit{animation:a11y-mobile-away .38s cubic-bezier(.55,0,.8,.35) both}
 #tk-accessibility.a11y-mobile-docked .a11y-launch{animation:a11y-mobile-tab .25s ease-out both}
 @keyframes a11y-mobile-pop{0%{opacity:0;transform:translateX(-38px) scale(.88)}65%{opacity:1;transform:translateX(3px) scale(1.03)}100%{opacity:1;transform:none}}
 @keyframes a11y-mobile-away{to{opacity:0;transform:translateX(-260px)}}
 @keyframes a11y-mobile-tab{from{opacity:0;translate:-16px 0}to{opacity:1;translate:0 0}}
}
@media(max-width:780px) and (prefers-reduced-motion:reduce){#tk-accessibility,#tk-accessibility .a11y-launch{animation:none!important;transition:none!important}}
@media(max-width:780px){body:has(.luna-mobile-greeting) #tk-accessibility .a11y-mobile-label{display:none}}
@media(max-width:780px){body.luna-is-open #tk-accessibility{visibility:hidden}}
