/* Chatbot "Sumi" — front (diseño Sumival). Usa variables del tema con fallback
   para funcionar aunque el tema activo no sea "sumival". */
/* Scrim del chat: mismo aspecto que el del carrito (.cartx-scrim), bajo el panel. */
.techchat-scrim{position:fixed;inset:0;background:var(--scrim,rgba(12,22,34,.5));opacity:0;visibility:hidden;transition:opacity .3s var(--ease,cubic-bezier(.4,.1,.2,1)),visibility .3s var(--ease,cubic-bezier(.4,.1,.2,1));z-index:1095;}
.techchat-scrim.open{opacity:1;visibility:visible;}
.techchat{position:fixed;right:22px;bottom:88px;z-index:1096;width:370px;max-width:calc(100vw - 32px);background:#fff;border:1px solid var(--line,#DDE4EE);border-radius:var(--r-xl);box-shadow:0 18px 50px rgba(16,32,56,.22);display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(12px) scale(.98);transition:opacity .2s var(--ease,cubic-bezier(.4,.1,.2,1)),transform .22s var(--ease,cubic-bezier(.4,.1,.2,1)),visibility .22s;}
.techchat.open{opacity:1;visibility:visible;transform:none;}
.techchat__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--ia-primary,var(--navy-800,#093F95));color:#fff;}
.techchat__id{display:flex;align-items:center;gap:11px;min-width:0;}
.techchat__av{width:36px;height:36px;min-width:36px;border-radius:var(--r-pill);background:rgba(255,255,255,.14);display:grid;place-items:center;place-content:center;line-height:0;font-size:0;flex:none;padding:0;}
.techchat__av svg{width:19px;height:19px;display:block;}
.techchat__id b{display:block;font-family:"Manrope",sans-serif;font-weight:700;font-size:var(--fs-ui,14px);color:#fff;}
.techchat__id span{display:block;font-size:var(--fs-xs,11.5px);color:rgba(255,255,255,.7);margin-top:1px;}
.techchat__close{width:30px;height:30px;min-width:30px;border:none;background:rgba(255,255,255,.12);border-radius:var(--r-control,10px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:.14s;}
.techchat__close svg{width:16px;height:16px;}
.techchat__close:hover{background:rgba(255,255,255,.24);}
.techchat__body{padding:16px;display:flex;flex-direction:column;gap:11px;max-height:340px;overflow-y:auto;background:var(--bg,#F1F5FA);}
.tcline{display:flex;flex-direction:column;gap:4px;max-width:88%;}
.tcline--bot{align-self:flex-start;align-items:flex-start;}
.tcline--me{align-self:flex-end;align-items:flex-end;}
.tcwho{font-family:var(--mono,ui-monospace,monospace);font-size:var(--fs-micro,10.5px);font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--slate-400,#8B97A8);padding:0 4px;}
.tcmsg{max-width:100%;font-size:var(--fs-ui,14px);line-height:1.55;border-radius:var(--r-lg);padding:10px 13px;}
.tcmsg p{margin:0;font-size:var(--fs-ui,14px);line-height:1.55;}
.tcmsg p+p{margin-top:7px;}
.tcmsg--bot{background:#fff;border:1px solid var(--line,#DDE4EE);color:var(--ink,#16233b);align-self:flex-start;border-bottom-left-radius:3px;}
.tcmsg--me{background:var(--tint,#EAF1FB);border:1px solid var(--line,#DDE4EE);border-radius:var(--r-pill);padding:7px 14px;font-family:"Manrope",sans-serif;font-weight:600;font-size:var(--fs-sm,12.5px);color:var(--ia-primary,var(--navy-800,#093F95));align-self:flex-end;}
.tcmsg--me p{font-family:"Manrope",sans-serif;font-weight:600;font-size:var(--fs-sm,12.5px);color:var(--ia-primary,var(--navy-800,#093F95));line-height:1.45;}
.tcmsg--typing{display:flex;gap:4px;align-items:center;}
.tcmsg--typing i{width:6px;height:6px;border-radius:var(--r-pill);background:var(--slate-400,#8B97A8);animation:tcdot 1s infinite;}
.tcmsg--typing i:nth-child(2){animation-delay:.15s;}
.tcmsg--typing i:nth-child(3){animation-delay:.3s;}
@keyframes tcdot{0%,60%,100%{opacity:.3;transform:translateY(0);}30%{opacity:1;transform:translateY(-3px);}}
.techchat__chips{display:flex;flex-direction:column;gap:6px;align-items:flex-start;}
.techchat__chips button{font-family:"Manrope",sans-serif;font-weight:600;font-size:var(--fs-sm,12.5px);color:var(--ia-secondary,var(--blue-600,#1A5FBE));background:#fff;border:1px solid var(--ia-secondary,var(--blue-600,#1A5FBE));border-radius:var(--r-pill);padding:6px 12px;cursor:pointer;text-align:left;transition:.14s;}
.techchat__chips button:hover{background:var(--tint,#EAF1FB);}
/* Productos sugeridos por Sumi (tarjetas de producto). */
.tcprods{display:flex;flex-direction:column;gap:10px;width:100%;}
.tcprod{background:#fff;border:1px solid var(--line,#DDE4EE);border-radius:var(--r-lg);padding:12px;display:flex;flex-direction:column;gap:8px;}
.tcprod__top{display:flex;align-items:center;gap:12px;}
.tcprod__img{width:56px;height:56px;min-width:56px;border:1px solid var(--line,#DDE4EE);border-radius:var(--r);display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;}
.tcprod__img img{max-width:100%;max-height:100%;display:block;}
.tcprod__info{flex:1;min-width:0;}
.tcprod__name{font-family:"Manrope",sans-serif;font-weight:700;font-size:13.5px;line-height:1.3;color:var(--ink,#16233b);}
.tcprod__ref{font-size:var(--fs-xs,11.5px);letter-spacing:.02em;color:var(--slate-400,#8B97A8);margin-top:4px;}
.tcprod__actions{display:flex;align-items:stretch;gap:8px;}
.tcprod__btn{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;background:#fff;color:var(--ink,#16233b);border:1px solid var(--line,#DDE4EE);font-family:"Manrope",sans-serif;font-weight:600;font-size:12.5px;padding:8px 15px;border-radius:var(--r);text-decoration:none;transition:border-color .14s,background .14s;}
.tcprod__btn:hover{border-color:var(--ink,#16233b);background:var(--bg,#F1F5FA);}
.tcprod__cart{margin:0;display:flex;}
/* Iconos presupuesto/carrito: mismos que la miniatura del listado (.qa) con tooltip. */
.tcprod__ic{position:relative;flex:0 0 38px;width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--ink,#16233b);border:1px solid var(--line,#DDE4EE);border-radius:var(--r);cursor:pointer;transition:border-color .14s,background .14s;}
.tcprod__ic svg{width:17px;height:17px;}
.tcprod__ic:hover{border-color:var(--ink,#16233b);background:var(--bg,#F1F5FA);}
.tcprod__ic span{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(4px);background:var(--ink,#16233b);color:#fff;font-family:"Manrope",sans-serif;font-weight:600;font-size:11.5px;white-space:nowrap;padding:6px 10px;border-radius:var(--r-lg);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;z-index:5;}
.tcprod__ic span::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:var(--ink,#16233b);}
.tcprod__ic:hover span{opacity:1;transform:translateX(-50%) translateY(0);}
.techchat__foot{display:flex;gap:8px;padding:12px 14px 8px;border-top:1px solid var(--line,#DDE4EE);background:#fff;}
.techchat__foot input{flex:1;min-width:0;border:1px solid var(--line,#DDE4EE);border-radius:var(--r-lg);padding:10px 12px;font-family:"Inter",sans-serif;font-size:var(--fs-ui,14px);color:var(--ink,#16233b);outline:none;transition:border-color .14s;}
.techchat__foot input:focus{border-color:var(--ia-secondary,var(--blue-600,#1A5FBE));}
.techchat__foot button{width:42px;min-width:42px;border:none;border-radius:var(--r-lg);background:var(--ia-primary,var(--navy-800,#093F95));color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.14s;}
.techchat__foot button svg{width:17px;height:17px;}
.techchat__foot button:hover{background:var(--ia-secondary,var(--blue-600,#1A5FBE));}
.techchat__foot button:disabled{opacity:.5;cursor:default;}
.techchat__note{padding:0 14px 12px;margin:0;font-size:var(--fs-micro,10.5px);color:var(--slate-400,#8B97A8);line-height:1.45;background:#fff;}
.techchat__note a{color:var(--ia-secondary,var(--blue-600,#1A5FBE));font-weight:600;}
@media (max-width:560px){.techchat{right:16px;left:16px;bottom:80px;width:auto;}.techchat__body{max-height:44vh;}}

.tech-fab{position:fixed;right:22px;bottom:22px;z-index:97;display:inline-flex;align-items:center;gap:0;background:var(--ia-primary,var(--navy-800,#093F95));color:#fff;border-radius:var(--r-pill);padding:13px;border:none;cursor:pointer;transition:gap .25s var(--ease,cubic-bezier(.4,.1,.2,1)),padding .25s var(--ease,cubic-bezier(.4,.1,.2,1)),background .15s;overflow:hidden;}
.tech-fab__ic{display:flex;align-items:center;justify-content:center;flex:none;}
.tech-fab__ic svg{width:24px;height:24px;}
.tech-fab__txt{font-family:"Manrope",sans-serif;font-weight:700;font-size:var(--fs-ui,14px);white-space:nowrap;max-width:0;opacity:0;transition:max-width .28s var(--ease,cubic-bezier(.4,.1,.2,1)),opacity .2s var(--ease,cubic-bezier(.4,.1,.2,1));}
.tech-fab.is-expanded{gap:10px;padding:13px 20px 13px 18px;}
.tech-fab.is-expanded .tech-fab__txt{max-width:220px;opacity:1;}
.tech-fab:hover{background:var(--ia-secondary,var(--blue-600,#1A5FBE));gap:10px;padding:13px 16px 13px 20px;}
.tech-fab:hover .tech-fab__txt{max-width:220px;opacity:1;}
@media (max-width:560px){.tech-fab{right:16px;bottom:16px;}.tech-fab:hover .tech-fab__txt{max-width:0;opacity:0;}.tech-fab:hover{gap:0;padding:13px;}}
