/* Mentor es visual y técnicamente independiente del tema principal. */
.mentor { --mentor-ink:var(--color-black,#000); --mentor-green:var(--color-1,#009c8c); --mentor-dark:var(--color-dark-bg,#131516); position:fixed; right:24px; bottom:22px; z-index:9000; font-family:var(--font-1,"Roboto",sans-serif); font-size:15px; color:var(--mentor-ink); }
.mentor * { box-sizing:border-box; }
.mentor button { height:auto; min-height:0; margin:0; padding:0; border:0; line-height:normal; text-transform:none; letter-spacing:normal; white-space:normal; }
.mentor__toggle { min-width:64px; height:64px; padding:0 15px; border:2px solid var(--mentor-green); border-radius:0; display:flex; align-items:center; gap:10px; color:#fff; background:var(--mentor-dark); box-shadow:0 12px 35px rgba(0,0,0,.22); cursor:pointer; transition:transform .25s,background .25s; }
.mentor__toggle:hover,.mentor__toggle:focus { transform:translateY(-3px); color:#fff; background:var(--mentor-green); border-color:var(--mentor-green); outline:0; }
.mentor__toggle-label { font-family:var(--font-2,"Manrope",sans-serif); font-size:11.5px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.mentor__mark { width:38px; height:21px; display:flex; align-items:center; justify-content:center; gap:2px; position:relative; }
.mentor__mark::after { content:""; position:absolute; width:7px; height:2px; top:9.2px; left:15.5px; background:#fff; }
.mentor__mark i { width:16.5px; height:16.5px; display:block; border:2px solid #fff; border-radius:45% 45% 52% 52%; background:rgba(0,156,140,.55); }
.mentor__mark--small { width:33px; flex:0 0 33px; transform:scale(.85); }
.mentor__panel { position:absolute; right:0; bottom:77px; width:min(380px,calc(100vw - 32px)); height:min(610px,calc(100vh - 120px)); max-height:min(610px,calc(100vh - 120px)); display:flex; flex-direction:column; overflow:hidden; border:1px solid var(--color-border,#e0e0e0); border-top:4px solid var(--mentor-green); border-radius:0; background:rgba(255,255,255,.99); box-shadow:0 18px 50px rgba(0,0,0,.18); opacity:0; visibility:hidden; transform:translateY(12px) scale(.97); transform-origin:bottom right; transition:.22s ease; }
.mentor--open .mentor__panel { opacity:1; visibility:visible; transform:none; }
.mentor__header { min-height:70px; padding:14px 15px; display:flex; flex:0 0 auto; align-items:center; gap:8px; color:#fff; background:var(--mentor-dark); }
.mentor__header strong,.mentor__header span { display:block; }
.mentor__header strong { color:#fff; font-family:var(--font-2,"Manrope",sans-serif); font-size:19px; font-weight:800; line-height:1; letter-spacing:.01em; }
.mentor__header span { margin-top:3.5px; font-size:9px; color:#c7e8e4; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.mentor__close { margin-left:auto; padding:4px 8px; border:0; color:#8ff3e8; background:transparent; font-size:24px; line-height:1; cursor:pointer; }
.mentor__close:hover,.mentor__close:focus { color:#fff; background:transparent; outline:2px solid var(--mentor-green); outline-offset:2px; }
.mentor__messages { min-height:80px; padding:18px 16px 8px; flex:1 1 auto; overflow-y:auto; overscroll-behavior:contain; background:#fff; }
.mentor__message { width:92%; margin:0 0 11px; padding:11.5px 13px; border-left:4px solid var(--mentor-green); border-radius:0; color:var(--color-gray-14,#3b3d3d); background:var(--color-gray-1,#eff0f0); font-family:var(--font-1,"Roboto",sans-serif); font-size:13.8px; line-height:1.55; white-space:pre-line; }
.mentor__message--typing::after { content:""; display:inline-block; width:2px; height:1em; margin-left:2px; vertical-align:-.12em; background:var(--mentor-green); animation:mentor-caret .75s steps(1) infinite; }
@keyframes mentor-caret { 50% { opacity:0; } }
.mentor__message--user { margin-left:auto; border-left:0; border-right:4px solid var(--mentor-green); color:#fff; background:var(--mentor-dark); font-family:var(--font-1,"Roboto",sans-serif); font-size:13px; }
.mentor__actions { max-height:110px; padding:2px 16px 12px; display:flex; flex:0 0 auto; flex-wrap:wrap; gap:7px; overflow-y:auto; }
.mentor__actions button { padding:7.5px 10px; border:1px solid var(--color-black,#000); border-radius:0; color:var(--color-black,#000); background:#fff; font-family:var(--font-1,"Roboto",sans-serif); font-size:10.5px; font-weight:600; line-height:1.25; letter-spacing:.02em; text-transform:none; cursor:pointer; transition:.2s; }
.mentor__actions button:hover,.mentor__actions button:focus { color:#fff; background:var(--color-black,#000); border-color:var(--color-black,#000); outline:0; }
.mentor__form { height:46px; min-height:46px; margin:0 14px; display:flex; flex:0 0 46px; overflow:hidden; border:1px solid var(--color-gray-3,#d0d1d1); border-radius:0; background:#fff; }
.mentor__form input { min-width:0; flex:1; height:44px; margin:0; padding:0 12px; border:0; color:var(--color-gray-15,#323333); background:transparent; font-size:12.5px; }
.mentor__form input::placeholder { color:var(--color-gray-9,#737474); opacity:1; }
.mentor__form input:focus { outline:0; }
.mentor__form button { width:45px; border:0; color:#fff; background:var(--mentor-green); font-size:20px; cursor:pointer; }
.mentor__form button:hover,.mentor__form button:focus { color:#fff; background:var(--color-black,#000); }
.mentor__privacy { margin:8px 16px 12px; flex:0 0 auto; color:var(--color-gray-12,#4f5151); font-size:9.5px; line-height:1.4; }
.mentor__hint { position:absolute; right:0; bottom:77px; width:290px; padding:12px 14px; border:1px solid var(--color-border,#e0e0e0); border-left:4px solid var(--mentor-green); border-radius:0; color:var(--color-text,#595b5b); background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.14); font-family:var(--font-1,"Roboto",sans-serif); font-size:12.5px; line-height:1.5; opacity:0; visibility:hidden; transform:translateY(8px); transition:.25s; cursor:pointer; }
.mentor__hint--show { opacity:1; visibility:visible; transform:none; }
.mentor__hint--typing::after { content:""; display:inline-block; width:2px; height:1em; margin-left:2px; vertical-align:-.12em; background:var(--mentor-green); animation:mentor-caret .75s steps(1) infinite; }
.mentor__sr { 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:600px) { .mentor { right:12px; bottom:12px; } .mentor__panel { bottom:70px; height:calc(100vh - 90px); max-height:calc(100vh - 90px); } .mentor__toggle { min-width:58px;height:58px;padding:0 11px; } .mentor__toggle-label { display:none; } .mentor__hint { width:min(280px,calc(100vw - 24px)); bottom:70px; } }
@media (prefers-reduced-motion:reduce) { .mentor * { transition:none!important; scroll-behavior:auto!important; } }
