.chamako-widget{position:fixed;right:22px;bottom:22px;z-index:99990;font-family:inherit;color:#f7f2ee}.chamako-launcher{display:flex;align-items:center;gap:11px;border:1px solid rgba(255,77,84,.72);border-radius:18px;padding:10px 15px 10px 10px;background:linear-gradient(145deg,#24171b,#100d10);color:#fff;box-shadow:0 10px 34px rgba(232,32,48,.3);cursor:pointer;text-align:left}.chamako-launcher>span:last-child{display:grid;font-size:12px;line-height:1.15}.chamako-launcher strong{font-size:15px;color:#ff656d}.chamako-avatar{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ff777d,#a50e1b 68%,#37060c);box-shadow:0 0 18px rgba(255,57,70,.48);overflow:hidden}.chamako-avatar img{width:100%;height:100%;object-fit:cover}.chamako-avatar span{font-size:12px;font-weight:900;letter-spacing:.06em}.chamako-panel{position:absolute;right:0;bottom:72px;width:min(380px,calc(100vw - 28px));height:min(590px,calc(100vh - 120px));border:1px solid rgba(255,255,255,.13);border-radius:22px;background:#100e11;box-shadow:0 22px 70px rgba(0,0,0,.58);overflow:hidden}.chamako-panel[hidden]{display:none}.chamako-panel header{height:68px;display:flex;align-items:center;gap:11px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.09);background:linear-gradient(135deg,#28151a,#151116)}.chamako-panel header .chamako-avatar{width:42px;height:42px;flex-basis:42px}.chamako-panel header>div:nth-child(2){display:grid;line-height:1.15}.chamako-panel header strong{font-size:17px}.chamako-panel header small{color:#b9afb1}.chamako-header-actions{margin-left:auto;display:flex;align-items:center;gap:7px}.chamako-panel header .chamako-header-actions button{border:0;color:#fff;cursor:pointer}.chamako-panel header [data-chamako-reset]{width:auto;height:32px;border-radius:10px;padding:0 9px;background:rgba(255,255,255,.08);font-size:11px;font-weight:800}.chamako-panel header [data-chamako-reset]:hover,.chamako-panel header [data-chamako-reset]:focus-visible{background:rgba(255,79,90,.2)}.chamako-panel header [data-chamako-close]{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);font-size:24px;display:grid;place-items:center;padding:0;line-height:1}.chamako-messages{height:calc(100% - 168px);overflow:auto;padding:15px;display:flex;flex-direction:column;gap:11px}.chamako-message{max-width:88%;border-radius:15px;padding:10px 12px;background:#211d21}.chamako-message p{margin:0;white-space:pre-wrap;line-height:1.45;font-size:14px}.chamako-message-user{align-self:flex-end;background:#8e1520}.chamako-message-assistant{align-self:flex-start;border:1px solid rgba(255,92,101,.2)}.chamako-message-system{align-self:center;max-width:100%;background:transparent;color:#a99fa2;text-align:center;font-size:12px}.chamako-message-error{align-self:flex-start;background:#3b2426;color:#ffd9dc}.chamako-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.chamako-actions a{display:inline-flex;padding:7px 9px;border-radius:9px;background:#f33b49;color:#fff;text-decoration:none;font-size:12px;font-weight:800}.chamako-form{height:100px;border-top:1px solid rgba(255,255,255,.09);padding:10px;display:grid;grid-template-columns:1fr auto;gap:8px;background:#151216}.chamako-form textarea{min-width:0;resize:none;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:10px;background:#090809;color:#fff;font:inherit;font-size:14px}.chamako-form textarea:focus{outline:2px solid rgba(255,75,86,.45);border-color:#ff4b56}.chamako-form button{align-self:stretch;border:0;border-radius:12px;padding:0 14px;background:#ed3341;color:#fff;font-weight:900;cursor:pointer}.chamako-form button:disabled{opacity:.55;cursor:wait}.chamako-form small{grid-column:1/-1;min-height:15px;color:#baaeb1;font-size:11px}.chamako-form .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:782px){.chamako-widget{right:12px;bottom:76px}.chamako-launcher{padding:8px 11px 8px 8px}.chamako-panel{position:fixed;inset:12px 10px 72px;width:auto;height:auto;border-radius:18px}.chamako-messages{height:calc(100% - 168px)}}@media(min-width:783px) and (max-width:1100px){.chamako-widget{right:18px;bottom:18px}.chamako-panel{height:min(560px,calc(100vh - 105px))}}@media(prefers-reduced-motion:no-preference){.chamako-panel{animation:chamako-in .18s ease-out}@keyframes chamako-in{from{opacity:0;transform:translateY(9px) scale(.98)}to{opacity:1;transform:none}}}


/* Identidad y legibilidad de Chamako. */
.chamako-avatar img{display:block;border-radius:inherit;object-position:center}
.chamako-launcher{max-width:calc(100vw - 24px)}
.chamako-launcher>span:last-child{min-width:0;color:#fff;font-weight:700;line-height:1.2}
.chamako-launcher strong{margin-top:2px;color:#49df8b;font-size:16px;font-weight:850;letter-spacing:.01em}
.chamako-panel{font-weight:500}
.chamako-panel header strong{font-weight:800}
.chamako-panel header small{font-weight:550}
.chamako-message p{font-weight:560}
.chamako-message-system{font-weight:600}
.chamako-form textarea{font-weight:550}
@media(max-width:782px){.chamako-launcher>span:last-child{font-size:12px}.chamako-launcher strong{font-size:15px}.chamako-panel header small{font-size:12px}.chamako-message p{font-size:14px;line-height:1.48}}

/* Keep focused form controls at iOS-readable size and the chat inside the keyboard viewport. */
@media(max-width:1024px){
 .chamako-form textarea{font-size:16px}
 body:has(form:not(.chamako-form) :is(input,select,textarea):focus) .chamako-widget:not([data-open="true"]){display:none}
}
@media(max-width:782px){
 .chamako-widget.chamako-typing .chamako-panel{
  position:fixed;
  inset:auto 10px auto;
  top:calc(var(--chamako-visual-top,0px) + 8px);
  height:calc(var(--chamako-visual-height,100dvh) - 16px);
  max-height:calc(100dvh - 16px);
  box-sizing:border-box
 }
 .chamako-panel{display:flex;flex-direction:column}
 .chamako-panel[hidden]{display:none}
 .chamako-panel header{flex:none;box-sizing:border-box}
 .chamako-messages{flex:1;min-height:0;height:auto}
 .chamako-form{flex:none;box-sizing:border-box}
}

/* Keep gallery sharing controls tappable while the mobile/tablet lightbox is open. */
@media(max-width:1000px){
 body:has(.gallery-lightbox:not([hidden])) .chamako-widget{display:none}
}
