/* Ayuda Lopez in Motion · v1.8.1 · tema de la suite, independiente de cada app.
   El botón flotante no tapa nada: ver el comentario del principio de help.js.
   1.8.1: en «Ver mejor», si los botones no caben junto a su nombre (A+++ en el móvil), pasan a otra línea en vez de salirse del panel. */
:root{--lim-zoom:1;--lim-cream:#fff8e8;--lim-ink:#3c0d25;--lim-sub:#57414c;--lim-yellow:#ffdf6e;--lim-mint:#bde9c5;--lim-pink:#f3b8d2;--lim-lavender:#d2c8f6;--lim-paper:#fffdf7;--lim-help-space:0px}

/* Ver mejor: tamaño de todo (zoom del body, vale con cualquier unidad), contraste y calma. */
html.lim-text-1{--lim-zoom:1.12}html.lim-text-2{--lim-zoom:1.25}html.lim-text-3{--lim-zoom:1.4}
html.lim-text-1 body,html.lim-text-2 body,html.lim-text-3 body{zoom:var(--lim-zoom)}
html.lim-contrast body{filter:contrast(1.35)}
html.lim-contrast a{text-decoration:underline!important;text-underline-offset:3px}
html.lim-contrast :focus-visible{outline:4px solid #000!important;outline-offset:3px!important;box-shadow:0 0 0 7px #ffdf6e!important}
html.lim-calm *,html.lim-calm *::before,html.lim-calm *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}

.lim-help-button{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:2147483000;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:8px 20px 8px 10px;border:2px solid var(--lim-ink);border-radius:100px;background:var(--lim-yellow);color:var(--lim-ink);box-shadow:0 5px 0 var(--lim-ink);font:700 18px/1 'DM Sans',system-ui,sans-serif;cursor:pointer;translate:0 calc(-1 * var(--lim-help-lift,0px));transition:opacity .15s,visibility .15s}
.lim-help-button span{display:grid;place-content:center;width:38px;height:38px;border:2px solid var(--lim-ink);border-radius:50%;background:var(--lim-cream);font:400 24px/1 Anton,'Arial Narrow',sans-serif}
.lim-help-button:hover{transform:translateY(2px);box-shadow:0 3px 0 var(--lim-ink)}
.lim-help-button:focus-visible,.lim-help-panel :focus-visible,.lim-tour-bubble :focus-visible{outline:3px solid var(--lim-ink);outline-offset:3px}
html.lim-help-open .lim-help-button{display:none}
/* Pantalla pequeña (o body[data-lim-help~=compact]): un «?» redondo de 48 px; «Ayuda» queda como nombre accesible. */
.lim-help-button.lim-help-compact{right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));width:48px;height:48px;min-height:48px;padding:0;gap:0;justify-content:center;border-radius:50%;background:var(--lim-paper);box-shadow:0 3px 0 var(--lim-ink)}
.lim-help-button.lim-help-compact span{width:auto;height:auto;border:0;background:none;font-size:28px}
.lim-help-button.lim-help-compact b{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.lim-help-button.lim-help-compact:hover{box-shadow:0 1px 0 var(--lim-ink)}
/* Se aparta: escondido mientras algo de la app pasa por debajo, o fuera del todo. */
.lim-help-button.lim-help-away{opacity:0;visibility:hidden;pointer-events:none}
.lim-help-button.lim-help-gone,.lim-help-button.lim-help-hidden{display:none!important}
/* Hueco para que lo último se pueda desplazar por encima del botón (--lim-help-space lo pone help.js). */
html.lim-help-on{scroll-padding-bottom:var(--lim-help-space,0px)}
body.lim-help-on .lim-help-pad{padding-bottom:var(--lim-help-space,0px)}
.lim-help-button,.lim-help-panel,.lim-help-toast{zoom:var(--lim-zoom)}
.lim-tour-bubble{font-size:calc(17px * var(--lim-zoom))!important;width:min(calc(380px * var(--lim-zoom)),calc(100vw - 24px))!important}
.lim-tour-text{font-size:1.06em!important}.lim-tour-nav button{font-size:.9em!important;min-height:calc(48px * var(--lim-zoom))!important}
.lim-help-panel{position:fixed;right:18px;bottom:18px;z-index:2147483001;width:min(460px,calc((100vw - 24px) / var(--lim-zoom)));max-height:min(720px,calc((100vh - 36px) / var(--lim-zoom)));display:flex;flex-direction:column;border:2px solid var(--lim-ink);border-radius:24px;background:var(--lim-cream);color:var(--lim-ink);box-shadow:6px 7px 0 var(--lim-ink);font:16px/1.55 'DM Sans',system-ui,sans-serif;overflow:hidden}
.lim-help-panel[hidden]{display:none}
.lim-help-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 10px}
.lim-help-head h2{margin:0;font:400 26px/1.1 Anton,'Arial Narrow',sans-serif;overflow-wrap:anywhere}
.lim-help-close{flex:none;width:44px;height:44px;border:2px solid var(--lim-ink);border-radius:50%;background:var(--lim-paper);color:var(--lim-ink);font-size:20px;cursor:pointer}
.lim-help-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:0 18px 12px;border-bottom:2px solid var(--lim-ink)}
.lim-help-tabs button{min-height:44px;padding:6px 12px;border:2px solid var(--lim-ink);border-radius:30px;background:var(--lim-paper);color:var(--lim-ink);font:700 14px 'DM Sans',system-ui,sans-serif;cursor:pointer}
.lim-help-tabs button[aria-selected=true]{background:var(--lim-ink);color:var(--lim-cream)}
.lim-help-body{padding:16px 18px;overflow:auto;flex:1}
.lim-help-lead{font-size:18px;margin:0 0 14px}
.lim-help-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:10px 0}
.lim-help-primary,.lim-help-speak{min-height:48px;padding:8px 18px;border:2px solid var(--lim-ink);border-radius:100px;background:var(--lim-yellow);color:var(--lim-ink);box-shadow:0 4px 0 var(--lim-ink);font:700 16px 'DM Sans',system-ui,sans-serif;cursor:pointer}
.lim-help-speak{background:var(--lim-paper);box-shadow:none;min-height:44px;font-size:14px;margin-top:8px}
.lim-help-link{min-height:44px;border:0;background:none;color:var(--lim-ink);text-decoration:underline;text-underline-offset:3px;font:600 15px 'DM Sans',system-ui,sans-serif;cursor:pointer;padding:6px 2px}
.lim-help-steps{margin:10px 0;padding-left:26px;font-size:17px}.lim-help-steps li{margin:8px 0}
.lim-help-guide,.lim-help-faq details{border:2px solid var(--lim-ink);border-radius:16px;background:var(--lim-paper);padding:10px 14px;margin:0 0 10px}
.lim-help-guide summary,.lim-help-faq summary{min-height:32px;font-weight:700;cursor:pointer;font-size:16px}
.lim-help-faq p{margin:8px 0 0}
.lim-help-search{width:100%;min-height:48px;border:2px solid var(--lim-ink);border-radius:12px;padding:8px 12px;font:16px 'DM Sans',system-ui,sans-serif;background:#fff;color:var(--lim-ink);margin-bottom:12px;box-sizing:border-box}
.lim-help-words dt{font-weight:700;margin-top:12px}.lim-help-words dd{margin:2px 0 0}
.lim-help-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #c6acae;font-weight:700}
.lim-help-seg{display:flex;flex-wrap:wrap;gap:6px}
.lim-help-seg button,.lim-help-switch{min-width:48px;min-height:48px;border:2px solid var(--lim-ink);border-radius:14px;background:var(--lim-paper);color:var(--lim-ink);font:700 15px 'DM Sans',system-ui,sans-serif;cursor:pointer;padding:4px 10px}
.lim-help-seg .lim-size-1{font-size:18px}.lim-help-seg .lim-size-2{font-size:21px}.lim-help-seg .lim-size-3{font-size:24px}
.lim-help-seg [aria-checked=true],.lim-help-switch[aria-checked=true]{background:var(--lim-mint)}
.lim-help-note{font-size:14px;color:var(--lim-sub)}
.lim-help-foot{padding:12px 18px;border-top:2px solid var(--lim-ink);background:var(--lim-lavender);font-size:15px}
.lim-help-foot a{color:var(--lim-ink);font-weight:700}
.lim-help-toast{position:fixed;left:auto;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(92px + env(safe-area-inset-bottom,0px));z-index:2147483000;box-sizing:border-box;width:max-content;max-width:min(360px,calc((100vw - 24px) / var(--lim-zoom)));border:2px solid var(--lim-ink);border-radius:20px;background:var(--lim-mint);color:var(--lim-ink);box-shadow:4px 5px 0 var(--lim-ink);padding:12px 16px;font:16px/1.45 'DM Sans',system-ui,sans-serif}
.lim-help-toast-wait{visibility:hidden;pointer-events:none}
.lim-help-toast p{margin:0 0 4px}.lim-help-toast .lim-help-actions{margin:4px 0 0}
.lim-tour-shade{position:fixed;inset:0;z-index:2147483002;background:rgba(30,6,18,.45)}
.lim-tour-ring{position:fixed;z-index:2147483003;border:4px solid var(--lim-yellow);border-radius:16px;box-shadow:0 0 0 3px var(--lim-ink),0 0 0 9999px rgba(30,6,18,.35);pointer-events:none;transition:all .25s}
.lim-tour-bubble{position:fixed;z-index:2147483004;width:min(380px,calc(100vw - 24px));border:2px solid var(--lim-ink);border-radius:20px;background:var(--lim-cream);color:var(--lim-ink);box-shadow:5px 6px 0 var(--lim-ink);padding:16px 18px;font:17px/1.5 'DM Sans',system-ui,sans-serif}
.lim-tour-count{margin:0;font-size:13px;color:var(--lim-sub);font-weight:700}
.lim-tour-text{margin:6px 0 12px;font-size:18px}
.lim-tour-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.lim-tour-nav button:not(.lim-help-primary):not(.lim-help-link):not(.lim-help-speak){min-height:48px;padding:8px 14px;border:2px solid var(--lim-ink);border-radius:100px;background:var(--lim-paper);color:var(--lim-ink);font:700 15px 'DM Sans',system-ui,sans-serif;cursor:pointer}
@media(max-width:620px){.lim-help-panel{right:6px;left:6px;bottom:calc(6px + env(safe-area-inset-bottom,0px));width:auto;max-height:calc((100vh - 12px) / var(--lim-zoom))}.lim-help-toast{right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(70px + env(safe-area-inset-bottom,0px));max-width:calc((100vw - 24px) / var(--lim-zoom));padding:10px 14px;font-size:15px}.lim-help-toast .lim-help-primary{min-height:44px;padding:6px 16px;font-size:15px}}
@media print{.lim-help-button,.lim-help-panel,.lim-help-toast,.lim-tour-shade,.lim-tour-ring,.lim-tour-bubble{display:none!important}}
