/* TecnoLatino Tools — frontend, móvil primero */
.tlt-tool{--ink:#0f1b24;--ink2:#55656f;--red:#E30C16;--green:#0e7c66;--amber:#b45309;--line:#dfe6ea;--bg:#f7f9fa;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,sans-serif;color:var(--ink);
	max-width:680px;margin:0 auto;line-height:1.55}
.tlt-tool *{box-sizing:border-box}
.tlt-head{text-align:center;margin-bottom:16px}
.tlt-eyebrow{display:inline-block;color:var(--red);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.tlt-title{margin:6px 0 4px;font-size:clamp(21px,4.5vw,28px);letter-spacing:-.015em;line-height:1.2}
.tlt-sub{margin:0;color:var(--ink2);font-size:15px}
.tlt-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin:14px 0;
	box-shadow:0 1px 2px rgba(15,27,36,.05),0 6px 18px rgba(15,27,36,.05)}
.tlt-q{margin:0 0 14px;font-size:17px}
.tlt-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.tlt-options--stack{grid-template-columns:1fr}
.tlt-option{display:block;width:100%;background:var(--bg);border:1.5px solid var(--line);border-radius:12px;
	padding:14px 16px;font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;
	transition:border-color .12s,transform .12s}
.tlt-option:hover,.tlt-option:focus{border-color:var(--red);transform:translateY(-1px)}
.tlt-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0}
.tlt-cat{display:flex;flex-direction:column;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--line);
	border-radius:14px;padding:18px 12px;cursor:pointer;transition:border-color .12s,transform .12s,box-shadow .12s}
.tlt-cat:hover{border-color:var(--red);transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,27,36,.08)}
.tlt-cat__icon{font-size:28px}
.tlt-cat__label{font-size:14px;font-weight:700;color:var(--ink);text-align:center;line-height:1.3}
.tlt-progress{height:6px;background:#e8edef;border-radius:999px;overflow:hidden;margin:0 0 4px}
.tlt-progress__bar{display:block;height:100%;background:linear-gradient(90deg,var(--red),#ff5a5f);border-radius:999px;transition:width .25s}
.tlt-back{background:none;border:none;color:var(--ink2);font-size:14px;font-weight:600;cursor:pointer;padding:8px 0}
.tlt-back:hover{color:var(--red)}
.tlt-badge{display:inline-block;padding:4px 14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}
.tlt-badge--alta{background:#fde8e8;color:#b42318}
.tlt-badge--media{background:#fdf1e2;color:var(--amber)}
.tlt-badge--baja{background:#eef1f4;color:var(--ink2)}
.tlt-result__cause{margin:2px 0 6px;font-size:20px;letter-spacing:-.01em}
.tlt-result__h{margin:16px 0 8px;font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}
.tlt-steps{margin:0;padding-left:22px}
.tlt-steps li{margin-bottom:8px;font-size:15px}
.tlt-warning{background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:12px 14px;font-size:14px;font-weight:600;color:#9a3412;margin:8px 0}
.tlt-result--secondary{padding:14px 20px}
.tlt-article-list{margin:0;padding-left:20px}
.tlt-article-list li{margin-bottom:8px}
.tlt-article-list a{color:var(--red);font-weight:700;text-decoration:none}
.tlt-article-list a:hover{text-decoration:underline}
.tlt-cta{display:block;width:100%;background:var(--red);color:#fff;border:none;border-radius:12px;padding:14px;
	font-size:16px;font-weight:800;cursor:pointer;margin:10px 0}
.tlt-cta:hover{background:#c50a13}
.tlt-cta--ghost{background:#fff;color:var(--red);border:2px solid var(--red)}
.tlt-cta--ghost:hover{background:#fff5f5}
.tlt-brand{text-align:center;color:#9aa7ad;font-size:12px;margin-top:18px}
.tlt-brand span{color:var(--red);font-weight:800}
@media(max-width:480px){.tlt-card{padding:16px}.tlt-cats{grid-template-columns:1fr 1fr}}

/* --- Laptop Finder --- */
.tlt-option--selected{border-color:var(--red);background:#fff5f5;position:relative}
.tlt-option--selected::after{content:"✓";position:absolute;right:14px;color:var(--red);font-weight:800}
.tlt-spec{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}
.tlt-spec:last-child{border-bottom:none}
.tlt-spec__k{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);flex-shrink:0;padding-top:2px}
.tlt-spec__v{font-size:15px;font-weight:700;text-align:right}
.tlt-nopay{background:#f0faf6;border-color:#bfe6d6}
.tlt-nopay__list{margin:0;padding-left:20px}
.tlt-nopay__list li{margin-bottom:6px;font-size:14px;color:#155e4b}
.tlt-priority{background:var(--bg);border-radius:10px;padding:10px 12px;font-size:14px;margin:8px 0 0}
@media(max-width:480px){.tlt-spec{flex-direction:column;gap:2px}.tlt-spec__v{text-align:left}}

/* --- ScamCheck --- */
.tlt-types{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}
.tlt-textarea{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:14px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--bg);resize:vertical;margin-bottom:12px}
.tlt-textarea:focus{outline:none;border-color:var(--red)}
.tlt-textarea--error{border-color:var(--red);background:#fff5f5}
.tlt-signals{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.tlt-signal{background:var(--bg);border-left:3px solid var(--red);border-radius:0 10px 10px 0;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.tlt-signal__label{font-size:14px}
.tlt-signal__why{font-size:13px;color:var(--ink2)}
.tlt-signal__sample{font-size:12px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:4px 8px;color:#9a3412;word-break:break-word;align-self:flex-start}
.tlt-disclaimer{font-size:12px;color:var(--ink2);text-align:center;font-style:italic;margin:8px 0}

/* --- Fase 2: calculadoras --- */
.tlt-input{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:14px;font-size:16px;font-family:inherit;color:var(--ink);background:var(--bg);margin-bottom:12px}
.tlt-input:focus{outline:none;border-color:var(--red)}
.tlt-bignum{font-size:clamp(40px,10vw,56px);font-weight:800;letter-spacing:-.03em;color:var(--red);margin:4px 0 8px}
.tlt-bignum__of{font-size:.45em;color:var(--ink2);font-weight:700}
.tlt-signal--media{border-left-color:#f59e0b}


/* --- Blindaje contra estilos globales del tema --- */
.tlt-tool button{-webkit-appearance:none;appearance:none;text-transform:none;letter-spacing:normal;box-shadow:none}
.tlt-tool .tlt-option{background:var(--bg)!important;color:var(--ink)!important;border:1.5px solid var(--line)!important;text-align:left!important}
.tlt-tool .tlt-option:hover,.tlt-tool .tlt-option:focus{border-color:var(--red)!important;background:var(--bg)!important}
.tlt-tool .tlt-option--selected,.tlt-tool .tlt-option--selected:hover{border-color:var(--red)!important;background:#fff5f5!important}
.tlt-tool .tlt-cat{background:#fff!important;color:var(--ink)!important;border:1.5px solid var(--line)!important}
.tlt-tool .tlt-cta{background:var(--red)!important;color:#fff!important;border:none!important}
.tlt-tool .tlt-cta--ghost{background:#fff!important;color:var(--red)!important;border:2px solid var(--red)!important}
.tlt-tool .tlt-back{background:none!important;border:none!important;color:var(--ink2)!important;box-shadow:none!important}

/* --- Suite de tests de dispositivos --- */
.tlt-keyzone{outline:none;min-height:180px;cursor:text}
.tlt-keyzone:focus{border-color:var(--red)}
.tlt-keyzone__hint{text-align:center;color:var(--ink2);font-weight:700;margin:30px 0}
.tlt-keystats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.tlt-chips{display:flex;flex-wrap:wrap;gap:6px}
.tlt-chip{background:#fff5f5;border:1px solid var(--red);color:#9a1c1c;border-radius:8px;padding:4px 10px;font-size:13px;font-weight:700;font-family:ui-monospace,Menlo,Consolas,monospace}
.tlt-chip--again{background:var(--red);color:#fff}
.tlt-screenfill{position:fixed;inset:0;z-index:999999;cursor:pointer}
.tlt-screenfill__label{position:absolute;top:18px;left:50%;transform:translateX(-50%);font:700 15px/1.4 -apple-system,sans-serif;padding:8px 16px;transition:opacity .4s;pointer-events:none;text-align:center;max-width:90%}
.tlt-video{width:100%;aspect-ratio:16/9;background:#0f1b24;border-radius:12px;display:block;margin-bottom:10px;object-fit:cover}
.tlt-video--on{}
.tlt-meter{height:26px;background:#e8edef;border-radius:999px;overflow:hidden;margin-bottom:10px}
.tlt-meter__bar{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--red),#ff5a5f);border-radius:999px;transition:width .08s}
.tlt-meter__bar--hot{background:linear-gradient(90deg,#f59e0b,#ef4444)}

/* --- Mouse y Contraseñas --- */
.tlt-mousegrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.tlt-mousepad{background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:22px 14px;text-align:center;display:flex;flex-direction:column;gap:6px;cursor:pointer;user-select:none;transition:border-color .12s}
.tlt-mousepad:hover{border-color:var(--red)}
.tlt-mousepad--warn{border-color:#f59e0b;background:#fffbeb}
.tlt-mousepad__title{font-size:15px}
.tlt-mousepad__hint{font-size:12px;color:var(--ink2)}
.tlt-mousepad__count{font-size:28px;font-weight:800;color:var(--red);font-variant-numeric:tabular-nums}
.tlt-pwout{display:flex;gap:8px;align-items:stretch;margin-bottom:14px}
.tlt-pwout__text{flex:1;background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:14px;font-size:17px;font-weight:700;font-family:ui-monospace,Menlo,Consolas,monospace;word-break:break-all;display:flex;align-items:center}
.tlt-pwout__copy{background:var(--red);color:#fff;border:none;border-radius:12px;padding:0 16px;font-weight:800;cursor:pointer;white-space:nowrap}
.tlt-pwout__copy:hover{background:#c50a13}
.tlt-pwcontrols{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:14px}
.tlt-pwlen{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}
.tlt-pwlen input[type=range]{accent-color:var(--red);width:130px}
.tlt-check{display:flex;gap:8px;align-items:center;cursor:pointer;font-size:14px;font-weight:600}
.tlt-check input{width:18px;height:18px;accent-color:var(--red)}
@media(max-width:480px){.tlt-mousegrid{grid-template-columns:1fr 1fr}}

/* --- Mecanografía --- */
.tlt-typing__clock{font-size:34px;font-weight:800;color:var(--red);text-align:center;font-variant-numeric:tabular-nums;margin-bottom:8px}
.tlt-typing__words{background:var(--bg);border-radius:12px;padding:14px;min-height:84px;display:flex;flex-wrap:wrap;gap:6px 10px;margin-bottom:12px;font-size:17px}
.tlt-typing__word{color:var(--ink2)}
.tlt-typing__word--now{color:var(--ink);font-weight:800;border-bottom:2px solid var(--red)}
.tlt-typing__word--bad{color:#b42318;background:#fde8e8;border-radius:4px}
.tlt-typing__input{font-size:18px;margin-bottom:0}

/* --- Herramientas forenses --- */
.tlt-textarea{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;resize:vertical;min-height:150px}
.tlt-drop{border:2px dashed #cfcfca;border-radius:14px;padding:34px 18px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:#fafafa}
.tlt-drop:hover,.tlt-drop--activa{border-color:var(--red);background:#fff7f7}
.tlt-drop__texto{margin:0;font-size:15px;font-weight:600;color:#5c5c57}
.tlt-hashout{display:flex;gap:8px;align-items:stretch;margin-bottom:14px}
.tlt-hashout__valor{flex:1;background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;font-size:13px;font-family:ui-monospace,Menlo,Consolas,monospace;word-break:break-all;display:flex;align-items:center}
.tlt-hashout__copiar{background:var(--red);color:#fff;border:none;border-radius:12px;padding:0 16px;font-weight:800;cursor:pointer;white-space:nowrap}
.tlt-hashout__copiar:hover{background:#c50a13}

/* --- Constructor de Prompts --- */
.tlt-option--doble{text-align:left;line-height:1.35}
.tlt-option__sub{display:block;font-size:13px;font-weight:400;color:var(--ink2);margin-top:4px;line-height:1.4}
.tlt-textarea--corta{min-height:56px}
.tlt-prompt{background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:16px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word;max-height:340px;overflow-y:auto;margin:0 0 14px}
