/* Mira is isolated from article styles and the mobile bottom navigation. */
.mira-launcher{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:24px;z-index:45;isolation:isolate;display:flex;align-items:center;gap:12px;min-height:68px;padding:11px 19px 11px 12px;border:1px solid #ffffff80;border-radius:999px;background:linear-gradient(120deg,#163c49 0%,#236e6b 62%,#26746b 100%);color:#fff;box-shadow:0 10px 28px #123c453b,inset 0 1px 0 #ffffff38;font:700 15px/1.3 Nunito,system-ui,sans-serif;text-align:left;cursor:pointer;animation:mira-float 5s ease-in-out infinite;transition:box-shadow .2s ease,filter .2s ease}
.mira-launcher:before{content:"";position:absolute;inset:-5px;z-index:-1;border:1px solid #72bdbb55;border-radius:inherit;box-shadow:0 0 24px #66d0b83b;animation:mira-halo 4s ease-in-out infinite;pointer-events:none}
.mira-launcher:after{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(115deg,#ffffff13,transparent 45%,#b7ffd90b);pointer-events:none}
.mira-launcher:hover{filter:brightness(1.08);box-shadow:0 14px 36px #123c4550,inset 0 1px 0 #ffffff55;animation-play-state:paused}
.mira-launcher:active{filter:brightness(.97)}
.mira-launcher:focus-visible,.mira-launcher[aria-expanded=true]{animation-play-state:paused}
.mira-launcher[aria-expanded=true]:before{animation-play-state:paused}
.mira-launcher-icon{position:relative;display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #d9fff54d;border-radius:50%;background:radial-gradient(circle at 25% 15%,#d4ffe26b,transparent 56%),linear-gradient(145deg,#80cab54d,#63a9cb33);box-shadow:inset 0 1px 9px #ffffff24,0 3px 8px #062e3426}
.mira-launcher>svg{width:31px;height:31px;flex-shrink:0}
.mira-launcher-icon svg{width:31px;height:31px;overflow:visible}
.mira-launcher-copy{display:grid;gap:3px;position:relative;z-index:1}
.mira-launcher-label{font-size:16px;letter-spacing:-.01em}
.mira-launcher-hint{font-size:10px;font-weight:500;letter-spacing:.025em;color:#effcf5}
@keyframes mira-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes mira-halo{0%,100%{opacity:.45}50%{opacity:1}}
.mira-open{overflow:hidden}.mira-dialog{box-sizing:border-box;width:min(460px,calc(100% - 40px));max-width:none;height:min(780px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);padding:0;margin:20px 20px 20px auto;border:1px solid #c8d7cf;border-radius:22px;background:#fafbf8;color:#193c43;box-shadow:0 22px 90px #193c4338;overflow:hidden;font:400 14px/1.6 Nunito,system-ui,sans-serif}.mira-dialog[open]{display:flex;flex-direction:column}.mira-dialog::backdrop{background:#132e3b55;backdrop-filter:blur(2px)}.mira-dialog *{box-sizing:border-box}.mira-dialog button,.mira-dialog input,.mira-dialog select,.mira-dialog textarea{font:inherit}.mira-dialog button{cursor:pointer}.mira-dialog button:disabled{opacity:.55;cursor:default}.mira-dialog button:focus-visible,.mira-dialog a:focus-visible,.mira-dialog input:focus-visible,.mira-dialog textarea:focus-visible,.mira-dialog select:focus-visible,.mira-launcher:focus-visible{outline:3px solid #8eaee0;outline-offset:3px}.mira-dialog h2,.mira-dialog h3,.mira-dialog p{margin:0}.mira-dialog h3{font:700 19px/1.35 Nunito,system-ui,sans-serif;letter-spacing:-.02em}.mira-dialog a{color:#226b65}.mira-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 20px 16px;border-bottom:1px solid #d9e3de;flex-shrink:0}.mira-identity{display:flex;align-items:center;gap:12px;min-width:0}.mira-avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:15px 15px 15px 5px;background:#e7f1ec;color:#226b65;font:400 31px/1 Georgia,serif}.mira-header h2{font:700 22px/1.2 Nunito,system-ui,sans-serif;letter-spacing:-.03em}.mira-header p{font-size:11px;color:#526768;margin-top:3px}.mira-icon-button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #d9e3de;background:transparent;border-radius:12px;color:#193c43;font-size:25px!important;line-height:1}.mira-toolbar{display:flex;align-items:center;gap:12px;min-height:47px;padding:6px 20px;border-bottom:1px solid #e3e9e5;flex-shrink:0}.mira-toolbar>span{margin-right:auto;font-size:11px;color:#526768;line-height:1.35}.mira-text-button{min-height:36px;border:0;background:transparent;padding:6px 0;color:#226b65;text-decoration:underline;text-underline-offset:3px;font-weight:700!important;font-size:12px!important;white-space:nowrap}.mira-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px;scroll-behavior:smooth}.mira-notice{padding:12px 14px;border:1px solid #dfd5b2;border-radius:12px;background:#fcf6e4;font-size:13px;overflow-wrap:anywhere;margin-bottom:16px!important}.mira-notice.mira-error{border-color:#dfc4bf;background:#fbefec;color:#794038}.mira-consent,.mira-card{display:grid;gap:15px}.mira-consent p,.mira-card>p{font-size:13px;color:#526768}.mira-primary,.mira-secondary,.mira-google{min-height:44px;border-radius:12px;padding:10px 15px;border:1px solid #226b65;background:#226b65;color:#fff;font-weight:700!important;text-align:center}.mira-secondary,.mira-google{border-color:#b6ccc0;background:#fff;color:#226b65}.mira-primary:hover{background:#193c43}.mira-secondary:hover,.mira-google:hover{background:#e7f1ec}.mira-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%}.mira-google span{font-weight:700;font-size:18px}.mira-divider{display:flex;align-items:center;gap:12px;color:#526768;font-size:11px}.mira-divider:before,.mira-divider:after{content:"";height:1px;background:#d9e3de;flex:1}.mira-dialog label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}.mira-dialog input:not([type=checkbox]),.mira-dialog select,.mira-dialog textarea{width:100%;min-width:0;min-height:44px;border:1px solid #b6ccc0;border-radius:10px;padding:10px 11px;background:#fff;color:#193c43;font-size:16px;line-height:1.45}.mira-dialog input[type=date]{max-width:100%}.mira-dialog form>button{margin-top:12px}.mira-section-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}.mira-section-heading .mira-text-button{white-space:normal;text-align:right;min-width:73px;padding-top:0}.mira-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 12px}.mira-wide{grid-column:1/-1}.mira-field-hint{display:block;font-size:10px;line-height:1.5;margin-top:6px;color:#526768}.mira-checkbox{display:flex!important;align-items:start;gap:9px;font-weight:400!important;font-size:12px!important}.mira-checkbox input{accent-color:#226b65;margin:4px 0 0;flex-shrink:0;width:16px;height:16px}.mira-actions{display:flex;flex-wrap:wrap;gap:9px}.mira-actions>button{flex:1;min-width:120px}.mira-account-actions{display:flex;justify-content:space-between;gap:15px;padding-top:12px;border-top:1px solid #d9e3de}.mira-danger{color:#954d42}.mira-danger-button{background:#954d42;border-color:#954d42}.mira-delete-confirm{padding:14px;border:1px solid #dfc4bf;border-radius:12px;background:#fbefec}.mira-delete-confirm p{font-size:12px;margin-bottom:12px}.mira-delete-confirm .mira-actions{margin-top:12px}.mira-muted{color:#526768;font-size:12px;overflow-wrap:anywhere}.mira-welcome{padding-top:8px}.mira-welcome>p{font-size:13px;color:#526768;margin-top:9px}.mira-suggestions{display:grid;gap:9px;margin-top:22px}.mira-suggestions button{min-height:44px;border:1px solid #d9e3de;border-radius:13px;background:#fff;color:#226b65;padding:12px 14px;text-align:left;font-size:12px}.mira-suggestions button:hover{background:#e7f1ec;border-color:#b6ccc0}.mira-messages{display:grid;gap:18px}.mira-message{min-width:0;overflow-wrap:anywhere}.mira-message-heading{font-size:11px;font-weight:700;color:#526768;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between}.mira-message-text{white-space:pre-wrap;font-size:14px;line-height:1.75}.mira-message-user{margin-left:30px;padding:13px 15px;border-radius:15px 15px 4px 15px;background:#e7f1ec}.mira-message-assistant{padding:0 0 15px;border-bottom:1px solid #e3e9e5}.mira-message-assistant:last-child{border-bottom:0}.mira-copy{min-height:30px;border:0;background:transparent;color:#226b65;font-size:11px!important;padding:3px 0 3px 10px}.mira-sources{margin-top:13px;font-size:11px}.mira-sources summary{cursor:pointer;color:#226b65;font-weight:700;min-height:30px;padding:4px 0}.mira-sources ol{margin:6px 0 0;padding-left:20px}.mira-sources li{margin-bottom:10px;line-height:1.6}.mira-source-type{display:inline-block;padding:1px 5px;border-radius:4px;background:#e7f1ec;font-size:9px;font-weight:700;margin-right:5px}.mira-source-locator{display:block;color:#526768}.mira-citation{color:#226b65;font-weight:700;text-underline-offset:3px}.mira-composer-wrap{flex-shrink:0;padding:12px 20px 15px;border-top:1px solid #d9e3de;background:#fafbf8}.mira-composer{display:flex;align-items:flex-end;gap:8px}.mira-composer textarea{resize:none;min-height:54px;max-height:140px;font-size:14px;padding:12px}.mira-composer button{margin:0!important}.mira-send{display:grid;place-items:center;flex-shrink:0;width:44px;min-height:44px;border:0;border-radius:12px;background:#226b65;color:#fff;padding:10px}.mira-send svg{width:23px;height:23px}.mira-footnote{font-size:10px;color:#526768;margin-top:8px!important;line-height:1.5}.mira-gate{font-size:12px;color:#526768;margin-bottom:9px!important}.mira-composer-wrap>.mira-secondary{width:100%;margin-bottom:8px}.mira-thinking{display:flex;align-items:center;gap:9px;color:#526768;font-size:12px}.mira-thinking:before{content:"";height:14px;width:14px;flex-shrink:0;border:2px solid #d9e3de;border-top-color:#226b65;border-radius:50%;animation:mira-spin 1s linear infinite}.mira-dialog[aria-busy=true] .mira-body{cursor:progress}@keyframes mira-spin{to{transform:rotate(360deg)}}
@media(max-width:999px){body:has(.bottom-navigation) .mira-launcher{bottom:calc(94px + env(safe-area-inset-bottom,0px))}body:has(.bottom-navigation) .mira-signin-prompt{bottom:calc(176px + env(safe-area-inset-bottom,0px));max-height:calc(100dvh - 210px)}}
@media(max-width:600px){.mira-launcher{right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));min-height:62px;padding:9px 16px 9px 10px;gap:10px}.mira-launcher-icon{width:42px;height:42px}.mira-launcher-label{font-size:15px}.mira-launcher-hint{font-size:9px}.mira-dialog{width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.mira-header{padding:calc(15px + env(safe-area-inset-top,0px)) 18px 14px}.mira-toolbar{padding:6px 18px}.mira-body{padding:18px}.mira-composer-wrap{padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px))}.mira-composer textarea{font-size:16px}.mira-dialog .mira-profile-grid{gap:15px 10px}.mira-dialog h3{font-size:18px}}
@media(max-width:359px){.mira-profile-grid{grid-template-columns:1fr}.mira-profile-grid>div,.mira-wide{grid-column:1}.mira-header p{font-size:10px}.mira-toolbar{gap:9px}}
@media(prefers-reduced-motion:reduce){.mira-launcher,.mira-launcher:before{animation:none!important;transform:none!important;transition:none!important}.mira-thinking:before{animation:none}.mira-body{scroll-behavior:auto}}
@media print{.mira-dialog,.mira-launcher{display:none!important}}
.mira-search-fallback{display:inline-block;font-size:12px;font-weight:700;margin:0 0 10px;text-underline-offset:3px}

.mira-launcher[hidden]{display:none!important}

.mira-google-personalized{display:flex;justify-content:center;min-height:44px;margin:16px 0 8px;max-width:100%}

.mira-signin-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,340px) auto;align-items:center;column-gap:20px;row-gap:0;width:1200px;max-width:calc(100% - 32px);box-sizing:border-box;margin:12px auto 0;padding:14px 54px 14px 20px;border:1px solid #d9e3de;border-radius:14px;background:#f4f8f5;color:#243e47;font-family:inherit}
.mira-signin-card[hidden],.mira-signin-google[hidden]{display:none!important}
.mira-signin-card h2{grid-column:1;grid-row:1;font-size:17px;line-height:1.4;margin:0}
.mira-signin-card p{grid-column:1;grid-row:2;font-size:12px;line-height:1.5;margin:4px 0 0;color:#526768}
.mira-signin-close{position:absolute;top:50%;right:7px;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:#526768;font-family:inherit;font-size:24px;line-height:1;cursor:pointer}
.mira-signin-google{grid-column:2;grid-row:1 / 3;display:flex;justify-content:center;min-width:0;min-height:44px;height:44px;overflow:hidden;max-width:100%;margin:0}
.mira-signin-more{grid-column:3;grid-row:1 / 3;display:block;margin:0;border:0;background:transparent;color:#226b65;font:inherit;font-size:12px;font-weight:700;min-height:40px;padding:8px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mira-signin-card button:focus-visible{outline:3px solid #226b65;outline-offset:3px}
.mira-launcher[data-collapsed=true]{width:56px;min-height:56px;padding:7px;gap:0;animation:none}
.mira-launcher[data-collapsed=true] .mira-launcher-copy{display:none}
.mira-launcher[data-collapsed=true]:before{animation:none;box-shadow:none}
.mira-launcher[data-collapsed=true] .mira-launcher-icon{width:40px;height:40px}
@media(max-width:700px){.mira-signin-card{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding:12px 14px;margin-top:10px}.mira-signin-card h2{font-size:15px}.mira-signin-card p{display:none}.mira-signin-google{grid-column:1 / -1;grid-row:2}.mira-signin-more{grid-column:2;grid-row:1;font-size:11px;padding:0 26px 0 0;min-height:28px}.mira-signin-close{top:6px;right:3px;transform:none;width:32px;height:32px;font-size:21px}}
@media print{.mira-signin-card{display:none!important}}

.mira-avatar{background:linear-gradient(145deg,#e4f3e9,#dceef0);color:#226b65;border:1px solid #c8dfd5}.mira-avatar svg{display:block;width:29px;height:29px}
