.botlaunch{display:flex;align-items:center;gap:9px;padding:9px 15px}.botlaunch span{font-size:12px;margin:0}.robot{width:34px;height:34px;fill:#18364f;stroke:#8ed7ff;stroke-width:2.5}.robot circle{fill:#a5efdb;stroke:none}.botlaunch b{background:#ffc55c;color:#111e2b;border-radius:15px;padding:3px 7px;font-size:11px}
#bot{width:410px;padding:18px;max-height:calc(100dvh - 110px);overflow:auto}#bot .section-top{margin-bottom:12px}#bot .section-top b{font-size:17px}#bot .bot-location{display:flex;align-items:center;gap:8px;font-size:11px;color:#b4c8dc;margin:8px 0 12px}#bot-city{max-width:240px;min-width:0;background:#0e1c2a;color:white;border:1px solid #496278;border-radius:5px;padding:8px;font-size:12px}#bot-alerts{padding:10px 12px;border:1px solid #3c635e;border-radius:6px;font-size:11px;line-height:1.5;background:#17312f}#bot-alerts[data-warning="true"]{border-color:#bc8557;background:#3a2821}#bot-alerts a{color:#a8d9ff;text-decoration:underline}#bot .bot-prompts{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}#bot .bot-prompts button{font-size:11px;border:1px solid #45617a;border-radius:20px;padding:7px 10px}#botmessages{max-height:36dvh;min-height:90px}#botmessages .bot-answer{padding:12px;background:#21384b;border-radius:8px;margin-bottom:10px}#botmessages .bot-user{background:#315473;margin-left:26px}#botmessages p{background:none;padding:0;margin:8px 0}#botmessages .bot-user{padding:10px}#botmessages h3{font-size:13px;font-weight:700;margin-bottom:8px}#botmessages ul{padding-left:18px}#botmessages li{margin:8px 0}#botmessages small{display:block;color:#b0c4d6;line-height:1.5}#botmessages img{display:block;max-width:100%;border-radius:4px;margin:10px 0}#botmessages details{padding:10px;margin:10px 0}#botmessages summary{font-size:12px}#botmessages pre{white-space:pre-wrap;font:inherit}#botform button{min-width:44px}#botinput{font-size:16px}#bot>small{line-height:1.5}
#bot-notice{position:fixed;z-index:29;right:24px;bottom:90px;width:330px;max-width:calc(100% - 32px);background:#392820;border:1px solid #ebba67;border-radius:12px;padding:18px;box-shadow:0 10px 45px #0008;font-size:12px;line-height:1.6}#bot-notice p{margin:10px 0}#dismiss-bot-notice{float:right;background:none;color:white;border:0;font-size:22px}#review-bot-alerts{border:1px solid #edbd76;border-radius:5px;background:#efc581;color:#102131;padding:9px 13px;font-weight:700}
@media(max-width:600px){#bot{right:10px;left:10px;width:auto;bottom:74px;padding:14px;max-height:calc(100dvh - 92px)}#bot-city{max-width:62%;font-size:16px}#botmessages{max-height:32dvh}#bot .bot-prompts button{min-height:40px}#bot-notice{right:12px;bottom:78px}.botlaunch{bottom:calc(12px + env(safe-area-inset-bottom));right:12px}}
#botmessages video{width:100%;margin:10px 0;background:#08111b}

/* Exact NWS colors use dark text to retain readable contrast. */
#bot-notice[data-colored="true"],#bot-alerts[data-colored="true"],#botbadge[data-colored="true"]{background:var(--hazard-color);border-color:var(--hazard-color);color:#000}
#bot-notice[data-colored="true"] #dismiss-bot-notice,#bot-alerts[data-colored="true"] a{color:#000}
#bot-notice[data-colored="true"] #review-bot-alerts{background:#101b29;color:#fff;border-color:#101b29}
#bot-notice-text{white-space:pre-line}
#botmessages .bot-alert-card{border-left:5px solid var(--hazard-color);padding-left:10px;margin:12px 0}
#botmessages .bot-alert-card h3{background:var(--hazard-color);color:#000;padding:7px 9px;border-radius:4px}

/* The mascot itself is the launcher; notices are its speech bubbles. */
#botlaunch{width:144px;height:180px;padding:0;right:24px;bottom:12px;display:block;background:transparent;border:0;border-radius:22px;box-shadow:none;transition:transform .2s ease}
#botlaunch:hover{transform:translateY(-3px)}
.storm-mascot{display:block;width:100%;height:100%;filter:drop-shadow(0 5px 8px #0006)}
.mascot-wave{transform-origin:83px 84px;transition:transform .25s ease}
#botlaunch:hover .mascot-wave{transform:rotate(-12deg)}
#botlaunch #botbadge{position:absolute;right:0;top:14px;min-width:25px;min-height:25px;padding:4px;border:2px solid #0b1420;font-size:12px;box-shadow:0 2px 8px #0005}
#bot-notice{bottom:200px;right:32px;border-radius:22px 22px 6px 22px;--bubble-fill:#392820;--bubble-edge:#ebba67;background:var(--bubble-fill)}
#bot-notice[data-colored="true"]{--bubble-fill:var(--hazard-color);--bubble-edge:var(--hazard-color)}
#bot-notice::after{content:'';position:absolute;width:20px;height:20px;right:57px;bottom:-11px;background:var(--bubble-fill);border-right:1px solid var(--bubble-edge);border-bottom:1px solid var(--bubble-edge);transform:rotate(45deg)}
#bot{bottom:200px;border-radius:22px 22px 6px 22px;max-height:calc(100dvh - 225px)}
#botlaunch[aria-expanded="true"]::before{content:'';position:absolute;right:61px;top:-29px;border-left:12px solid transparent;border-right:12px solid transparent;border-top:14px solid #263c50;pointer-events:none}
@media(max-width:600px){#botlaunch{width:104px;height:132px;right:12px;bottom:calc(8px + env(safe-area-inset-bottom))}#bot-notice{right:16px;bottom:calc(152px + env(safe-area-inset-bottom))}#bot-notice::after{right:36px}#bot{bottom:calc(152px + env(safe-area-inset-bottom));max-height:calc(100dvh - 176px - env(safe-area-inset-bottom))}#botlaunch[aria-expanded="true"]::before{right:41px;top:-24px}#botlaunch #botbadge{right:0;top:7px}}
@media(prefers-reduced-motion:reduce){#botlaunch,.mascot-wave{transition:none}#botlaunch:hover{transform:none}#botlaunch:hover .mascot-wave{transform:none}}

#botlaunch .mascot-invite{position:absolute;right:122px;bottom:103px;width:148px;margin:0;padding:12px 14px;border:1px solid #96daf4;border-radius:16px 16px 4px 16px;background:#e3f6ff;color:#102b43;font-size:14px;line-height:1.4;font-weight:700;text-align:left;box-shadow:0 5px 20px #0004;white-space:normal}
#botlaunch .mascot-invite::after{content:'';position:absolute;right:-7px;bottom:12px;width:12px;height:12px;background:#e3f6ff;border-right:1px solid #96daf4;border-top:1px solid #96daf4;transform:rotate(45deg)}
#botlaunch[aria-expanded="true"] .mascot-invite,body:has(#bot-notice:not([hidden])) #botlaunch .mascot-invite{display:none}
@media(max-width:600px){#botlaunch .mascot-invite{right:88px;bottom:70px;width:137px;font-size:13px;padding:10px 12px}}

/* Keep the warning and its affected counties together as the main message. */
/* Compact custom mascot. Scroll clearance is calculated from the footer links. */
#botlaunch{width:110px;height:165px;bottom:12px}
#botlaunch .storm-mascot{object-fit:contain}
#botlaunch .mascot-invite{right:116px;bottom:94px;width:148px}
#botlaunch .mascot-invite{pointer-events:none}
#botlaunch[aria-expanded="true"]::before{right:44px}
#botlaunch #botbadge{right:-4px;top:3px}
@media(max-width:600px){#botlaunch{width:80px;height:120px;bottom:calc(8px + env(safe-area-inset-bottom))}#botlaunch .mascot-invite{right:85px;bottom:66px;width:130px;font-size:12px}#botlaunch[aria-expanded="true"]::before{right:29px}}

#bot-notice{width:420px;padding:20px 22px;font-size:15px;line-height:1.4}
#bot-notice>b{display:block;padding-right:25px;font-size:18px;font-weight:800;line-height:1.4}
#bot-notice #bot-notice-text{white-space:normal;margin:16px 0 18px;max-height:40dvh;overflow:auto;overflow-wrap:break-word}
#bot-notice .notice-alert-message{display:block;font-size:27px;line-height:1.22;font-weight:900;letter-spacing:-.35px}
#bot-notice .notice-alert-message+.notice-alert-message{margin-top:16px;padding-top:16px;border-top:2px solid currentColor}
#bot-notice .notice-more{display:block;font-size:15px;font-weight:700;margin-top:14px}
#dismiss-bot-notice{position:absolute;right:9px;top:7px;width:36px;height:36px;float:none;font-size:26px;font-weight:700}
#review-bot-alerts{font-size:15px;min-height:44px;font-weight:800;padding:10px 16px}
@media(max-width:600px){#bot-notice{padding:18px;max-width:calc(100% - 32px)}#bot-notice>b{font-size:16px}#bot-notice .notice-alert-message{font-size:24px}#bot-notice #bot-notice-text{max-height:calc(100dvh - 330px)}}



/* Visitors can tuck the mascot away without disabling local alert notices. */
#minimize-bot{position:fixed;z-index:31;right:22px;bottom:178px;width:28px;height:28px;border-radius:50%;border:1px solid #6e93b3;background:#152a3c;color:#fff;font-size:23px;line-height:1;cursor:pointer}
.bot-mini-icon{display:none}
body.bot-minimized #minimize-bot,body.bot-minimized #botlaunch .storm-mascot,body.bot-minimized #botlaunch .mascot-invite{display:none}
body.bot-minimized #botlaunch{width:56px;height:56px;border:1px solid #8cd8ef;border-radius:50%;background:#142e43;box-shadow:0 3px 14px #0006}
body.bot-minimized #botlaunch .bot-mini-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#b9edff;font-size:25px;line-height:1}
body.bot-minimized .bot-mini-icon span{font-size:10px;line-height:1.4;font-weight:700;color:#fff}
body.bot-minimized #bot-notice{bottom:90px}
@media(max-width:600px){#minimize-bot{right:12px;bottom:calc(132px + env(safe-area-inset-bottom));width:28px;height:28px}body.bot-minimized #bot-notice{bottom:calc(86px + env(safe-area-inset-bottom))}}
#bot .bot-location{display:grid;grid-template-columns:1fr auto;gap:8px;margin:12px 0 4px}#bot .bot-location label{grid-column:1/-1;font-size:12px}#bot-zip{width:100%;min-width:0;padding:10px;background:#0e1c2a;color:white;border:1px solid #496278;border-radius:6px;font-size:16px}#bot-location-form button{padding:10px;border:1px solid #496278;border-radius:6px;font-size:12px}#bot-location-status{font-size:11px;color:#b4c8dc;line-height:1.5;margin:6px 0 12px}
