.iris-mini{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:transparent;color:#123345;padding:0 6px;cursor:pointer;min-width:90px;min-height:98px}.iris-mini img{width:76px;height:76px;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 3px 12px #12334520;animation:iris-invite 3.5s ease-in-out infinite}.iris-mini span{font-size:12px;font-weight:700}.hero .actions{align-items:center}.iris-mini:hover img{box-shadow:0 0 0 3px #007f8340}.iris-widget[hidden]{display:none!important}.iris-widget{position:fixed;z-index:45;right:16px;bottom:12px;right:max(16px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:340px;max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;color:#123345;font-size:14px;filter:drop-shadow(0 7px 16px #12334520)}.iris-bubble{padding:16px;border-radius:18px;background:white;border:1px solid #bfdcdf}.iris-widget-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.iris-widget-heading strong{font-size:17px}.iris-widget-heading span{display:block;font-size:12px;color:#526975}.iris-widget button{font:inherit;cursor:pointer;min-height:44px;min-width:44px;border:1px solid #bfd5d9;border-radius:6px;background:#fff;color:#123345;padding:8px 10px}.iris-widget .iris-close{font-size:18px;flex-shrink:0}.iris-current{margin:14px 0;line-height:1.65;min-height:80px;max-height:160px;overflow:auto}.iris-page-controls{display:flex;align-items:center;justify-content:space-between;gap:14px}.iris-counter{font-size:12px;color:#526975}.iris-controls{display:flex;gap:7px;margin-top:10px;flex-wrap:wrap}.iris-controls button{flex:1;font-size:12px;padding:8px 7px}.iris-controls .iris-read{background:#007f83;color:white;border-color:#007f83}.iris-widget button:disabled{opacity:.45;cursor:default}.iris-status{font-size:12px;color:#526975;line-height:1.45;min-height:32px;margin:10px 0}.iris-links{display:flex;gap:10px;flex-wrap:wrap}.iris-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#007f83;font-weight:600}.iris-avatar{position:relative;margin:0 8px 0 auto;width:190px;height:190px;transform-origin:50% 90%;animation:iris-invite 4s ease-in-out infinite}.iris-avatar>img{display:block;width:100%;height:100%;object-fit:contain;border-radius:14px;background:white}.iris-sprite{display:none;position:absolute;inset:0;background-image:url('assets/mascots/iris-expressions-v2.png');background-size:300% 100%;background-position:0% 0%;background-repeat:no-repeat}.iris-widget.has-sprite .iris-sprite{display:block}.iris-widget.has-sprite .iris-avatar>img{visibility:hidden}.iris-widget[data-frame="1"] .iris-sprite{background-position:50% 0%}.iris-widget[data-frame="2"] .iris-sprite{background-position:100% 0%}.iris-widget.is-paused .iris-avatar{animation-play-state:paused}.iris-widget.is-speaking .iris-avatar{animation:iris-talking 1.8s ease-in-out infinite}@keyframes iris-invite{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(1deg)}}@keyframes iris-talking{0%,100%{transform:translateY(0) rotate(-.7deg)}50%{transform:translateY(-3px) rotate(.7deg)}}@media(max-width:620px){.iris-widget{right:12px;bottom:8px;right:max(12px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));width:310px}.iris-avatar{width:150px;height:150px}.iris-current{max-height:130px;min-height:60px}.iris-bubble{padding:14px}}@media(max-height:600px){.iris-avatar{width:100px;height:100px}.iris-current{max-height:90px;min-height:40px}.iris-status{min-height:0}.iris-bubble{padding:10px}}@media(prefers-reduced-motion:reduce){.iris-mini img,.iris-widget .iris-avatar,.iris-widget.is-speaking .iris-avatar{animation:none!important;transform:none}}
@media(max-height:600px) and (min-width:621px){.iris-widget{width:450px;display:flex;align-items:flex-end;gap:8px;overflow:visible}.iris-bubble{flex:1;min-width:0;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:auto}.iris-avatar{flex:0 0 100px;margin:0}.iris-current{max-height:80px}}

.iris-speed{display:flex;align-items:center;gap:6px;margin-top:10px}.iris-speed>span{font-size:12px;margin-right:2px}.iris-speed button{flex:1;min-height:44px;padding:8px;font-size:14px;font-weight:700}.iris-speed button[aria-pressed="true"]{background:#007f83;color:white;border-color:#007f83}.iris-settings{padding:0;margin-top:8px;border:0;background:transparent}.iris-settings summary{min-height:36px;display:flex;align-items:center;font-size:12px;font-weight:600;cursor:pointer}.iris-settings summary:after{content:' ▾';margin-left:6px}.iris-settings label{display:block;font-size:12px}.iris-settings select{display:block;min-height:44px;max-width:100%;width:100%;margin:8px 0;border:1px solid #bfd5d9;border-radius:6px;background:white;font:16px 'Segoe UI',Arial,sans-serif;padding:8px;color:#123345}.iris-voice-hint{font-size:11px;line-height:1.45;color:#526975}.iris-follow-label{display:flex!important;align-items:center;gap:8px;min-height:44px}.iris-follow{width:18px;height:18px;flex-shrink:0}.iris-widget .iris-status{min-height:20px}.iris-avatar{width:160px;height:160px}.iris-topic-active{outline:2px solid #007f8350;outline-offset:8px;scroll-margin-top:24px}@media(max-width:620px){.iris-avatar{width:130px;height:130px}.iris-current{max-height:110px;min-height:45px}}@media(max-height:600px){.iris-widget .iris-avatar{width:100px;height:100px}.iris-speed button{min-height:44px}.iris-widget .iris-settings summary{min-height:36px}}

/* Reserve scrollbar space so animated frames and changing copy cannot resize the bubble. */
.iris-widget,.iris-current{overflow-x:hidden;overflow-y:scroll;scrollbar-gutter:stable}
/* Keep the mascot's transformed edges inside its own box, outside scroll-size calculations. */
.iris-avatar{animation:none;transform:none;overflow:hidden;overflow:clip}
.iris-widget.is-speaking .iris-avatar{animation:none;transform:none}
.iris-avatar>img,.iris-sprite{transform-origin:50% 90%;animation:iris-invite 4s ease-in-out infinite}
.iris-widget.is-speaking .iris-avatar>img,.iris-widget.is-speaking .iris-sprite{animation-name:iris-talking;animation-duration:1.8s}
.iris-widget.is-paused .iris-avatar>img,.iris-widget.is-paused .iris-sprite{animation-play-state:paused}
.iris-mini{min-width:104px;min-height:104px;gap:5px;padding:2px 8px;border:1px solid #b7d8d9;border-radius:12px;background:#fff;box-shadow:0 3px 12px #12334512;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}
.iris-mini img{width:80px;height:80px}
.iris-mini span{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 10px;border:1px solid #b7d8d9;border-radius:999px;background:#eaf6f5;color:#006f73;font-size:14px;font-weight:800;line-height:1.2;white-space:nowrap}
.iris-mini:hover,.iris-mini:focus-visible{border-color:#007f83;box-shadow:0 0 0 3px #007f8326,0 5px 14px #12334518}
.iris-mini:active{transform:translateY(1px)}
.iris-mini:focus-visible{outline:3px solid #007f83;outline-offset:3px}
@media(max-width:620px){.iris-mini{min-width:100px;min-height:100px}.iris-mini img{width:76px;height:76px}}
@media(max-height:600px) and (min-width:621px){.iris-widget{overflow:visible;scrollbar-gutter:auto}.iris-bubble{overflow-x:hidden;overflow-y:scroll;scrollbar-gutter:stable}}
@media(prefers-reduced-motion:reduce){.iris-avatar>img,.iris-sprite{animation:none!important;transform:none}}

/* Keep all speech controls directly interactive on touchscreens. */
.iris-widget button,.iris-widget select,.iris-widget summary,.iris-widget input{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.iris-widget button:not(:disabled){pointer-events:auto}
