/* Point Web — Herramientas: estilos base. Tema oscuro = el del sitio (negro + naranja). Tema claro = para insertar en otros sitios.
   Todas las clases van con prefijo .pwh para no chocar con el tema ni con Elementor. Mobile-first. */
.pwh{
	--pwh-acento:#F36523;
	--pwh-fondo:#131316; --pwh-panel:#1B1B1F; --pwh-campo:#0F0F12; --pwh-linea:#2A2A30;
	--pwh-texto:#F2EFE9; --pwh-suave:#A8A39A; --pwh-ok:#25D366; --pwh-alerta:#FFB547; --pwh-error:#FF6B5E;
	--pwh-radio:16px; --pwh-radio-s:10px;
	--pwh-mono:"PW Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
	font-family:inherit; color:var(--pwh-texto); line-height:1.5; font-size:16px;
	box-sizing:border-box; width:100%; max-width:1040px; margin:0 auto;
}
.pwh *,.pwh *::before,.pwh *::after{box-sizing:border-box}
.pwh--claro{--pwh-fondo:#FFFFFF;--pwh-panel:#F7F5F1;--pwh-campo:#FFFFFF;--pwh-linea:#E4E0D8;--pwh-texto:#151517;--pwh-suave:#5E5A53}
.pwh__tool{background:var(--pwh-fondo);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio);padding:20px}
@media(min-width:768px){.pwh__tool{padding:32px}}

/* layout */
.pwh__grid{display:grid;gap:16px}
@media(min-width:768px){.pwh__grid--2{grid-template-columns:1fr 1fr}.pwh__grid--3{grid-template-columns:repeat(3,1fr)}.pwh__grid--res{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:28px}}
.pwh__fila{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pwh__sep{border:0;border-top:1px solid var(--pwh-linea);margin:20px 0}
.pwh__titulo{font-size:1.15rem;font-weight:700;margin:0 0 12px;color:var(--pwh-texto)}
.pwh__nota{font-size:.85rem;color:var(--pwh-suave);margin:8px 0 0}
.pwh [hidden]{display:none!important}

/* campos */
.pwh__campo{display:flex;flex-direction:column;gap:6px;margin:0}
.pwh__label{font-size:.85rem;font-weight:600;color:var(--pwh-suave);letter-spacing:.01em}
.pwh__input-wrap{display:flex;align-items:stretch;border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio-s);background:var(--pwh-campo);overflow:hidden;transition:border-color .15s}
.pwh__input-wrap:focus-within{border-color:var(--pwh-acento);box-shadow:0 0 0 3px color-mix(in srgb,var(--pwh-acento) 25%,transparent)}
.pwh__input-wrap input,.pwh__input-wrap select,.pwh__input-wrap textarea{flex:1;min-width:0;width:100%;border:0!important;background:transparent!important;color:var(--pwh-texto)!important;font:inherit;font-size:16px;padding:12px 14px;outline:none;box-shadow:none!important;border-radius:0;margin:0;-webkit-appearance:none;appearance:none}
.pwh__input-wrap select{cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--pwh-suave) 50%),linear-gradient(135deg,var(--pwh-suave) 50%,transparent 50%)!important;background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%!important;background-size:5px 5px!important;background-repeat:no-repeat!important;padding-right:34px}
.pwh__input-wrap select option{color:#151517;background:#fff}
.pwh__input-wrap textarea{min-height:96px;resize:vertical}
.pwh__input-wrap input[type=color]{padding:4px;height:46px;cursor:pointer;background:#fff!important}
.pwh__input-wrap input[type=range]{-webkit-appearance:auto;appearance:auto;accent-color:var(--pwh-acento);padding:12px 14px;height:auto}
.pwh__sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pwh__prefijo,.pwh__sufijo{display:flex;align-items:center;padding:0 12px;color:var(--pwh-suave);font-family:var(--pwh-mono);font-size:.9rem;background:color-mix(in srgb,var(--pwh-linea) 45%,transparent)}
.pwh__ayuda{font-size:.8rem;color:var(--pwh-suave)}
.pwh__check{display:flex;gap:10px;align-items:center;font-size:.95rem;cursor:pointer}
.pwh__check input{width:18px;height:18px;accent-color:var(--pwh-acento)}

/* botones */
.pwh__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 22px;font:inherit;font-weight:700;font-size:.95rem;line-height:1.2;cursor:pointer;text-decoration:none!important;background:var(--pwh-acento);color:#fff!important;transition:transform .15s,filter .15s,background .15s;min-height:46px}
.pwh__btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.pwh__btn:focus-visible{outline:2px solid var(--pwh-texto);outline-offset:2px}
.pwh__btn--sec{background:transparent;color:var(--pwh-texto)!important;border:1px solid var(--pwh-linea)}
.pwh__btn--sec:hover{border-color:var(--pwh-acento)}
.pwh__btn--wa{background:var(--pwh-ok);color:#06210f!important}
.pwh__btn--chico{padding:8px 14px;min-height:36px;font-size:.85rem}
.pwh__btn[disabled]{opacity:.5;cursor:not-allowed;transform:none}

/* resultados */
.pwh__resultado{background:var(--pwh-panel);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio);padding:18px}
.pwh__kpis{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.pwh__kpi{background:var(--pwh-campo);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio-s);padding:12px 14px}
.pwh__kpi-label{display:block;font-size:.78rem;color:var(--pwh-suave);text-transform:uppercase;letter-spacing:.06em}
.pwh__kpi-valor{display:block;font-family:var(--pwh-mono);font-size:1.25rem;font-weight:700;color:var(--pwh-texto);margin-top:2px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.pwh__kpi--grande{grid-column:1/-1;border-color:color-mix(in srgb,var(--pwh-acento) 55%,var(--pwh-linea))}
.pwh__kpi--grande .pwh__kpi-valor{font-size:1.9rem;color:var(--pwh-acento)}
@media(max-width:560px){.pwh__kpis{grid-template-columns:minmax(0,1fr)}.pwh__kpi:not(.pwh__kpi--grande){display:flex;justify-content:space-between;align-items:baseline;gap:12px}.pwh__kpi:not(.pwh__kpi--grande) .pwh__kpi-valor{margin:0;text-align:right;overflow-wrap:normal;white-space:nowrap}.pwh__kpi--grande .pwh__kpi-valor{font-size:1.55rem}}
.pwh__tabla{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}
.pwh__tabla th,.pwh__tabla td{padding:9px 10px;border-bottom:1px solid var(--pwh-linea);text-align:left}
.pwh__tabla th{color:var(--pwh-suave);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.pwh__tabla td.num,.pwh__tabla th.num{text-align:right;font-family:var(--pwh-mono)}
.pwh__tabla-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:560px){.pwh-datos .pwh__tabla:has(th:nth-child(4)){min-width:540px}.pwh-datos .pwh__tabla-wrap:has(th:nth-child(4))::before{content:"Deslizá la tabla para ver todas las columnas →";display:block;font-size:.78rem;color:var(--pwh-suave);margin-bottom:8px}}
.pwh__salida{font-family:var(--pwh-mono);font-size:.9rem;background:var(--pwh-campo);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio-s);padding:12px 14px;word-break:break-all;white-space:pre-wrap;color:var(--pwh-texto)}
.pwh__badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:color-mix(in srgb,var(--pwh-acento) 18%,transparent);color:var(--pwh-acento)}
.pwh__badge--ok{background:color-mix(in srgb,var(--pwh-ok) 18%,transparent);color:var(--pwh-ok)}
.pwh__badge--alerta{background:color-mix(in srgb,var(--pwh-alerta) 18%,transparent);color:var(--pwh-alerta)}
.pwh__badge--error{background:color-mix(in srgb,var(--pwh-error) 18%,transparent);color:var(--pwh-error)}
.pwh--claro{--pwh-ok-texto:#0B7A3B;--pwh-alerta-texto:#8A5300;--pwh-error-texto:#B42318}
.pwh--claro .pwh__badge--ok{color:var(--pwh-ok-texto)}.pwh--claro .pwh__badge--alerta{color:var(--pwh-alerta-texto)}.pwh--claro .pwh__badge--error{color:var(--pwh-error-texto)}
.pwh__aviso{font-size:.88rem;border-left:3px solid var(--pwh-alerta);padding:8px 12px;background:color-mix(in srgb,var(--pwh-alerta) 8%,transparent);border-radius:0 8px 8px 0;margin:12px 0 0;color:var(--pwh-texto)}

/* pestañas */
.pwh__tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 18px;padding:4px;background:var(--pwh-campo);border:1px solid var(--pwh-linea);border-radius:999px;width:fit-content;max-width:100%}
.pwh__tab{border:0;background:transparent;color:var(--pwh-suave);font:inherit;font-weight:600;font-size:.9rem;padding:8px 16px;border-radius:999px;cursor:pointer;white-space:nowrap}
@media(max-width:767px){.pwh__tabs{flex-wrap:nowrap;overflow-x:auto;width:100%;border-radius:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.pwh__tabs::-webkit-scrollbar{display:none}.pwh__tab{flex:1 0 auto;padding:8px 12px;border-radius:10px}}
.pwh__tab[aria-selected=true]{background:var(--pwh-acento);color:#fff}

/* «¿Cómo se calcula?» */
.pwh__como{margin-top:20px;border-top:1px solid var(--pwh-linea);padding-top:14px;font-size:.92rem;color:var(--pwh-suave)}
.pwh__como summary{cursor:pointer;font-weight:600;color:var(--pwh-texto);list-style:none;display:flex;align-items:center;gap:8px}
.pwh__como summary::-webkit-details-marker{display:none}
.pwh__como summary::before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid var(--pwh-linea);font-size:.85rem;color:var(--pwh-acento)}
.pwh__como[open] summary::before{content:"–"}
.pwh__como p{margin:10px 0 0;max-width:72ch}
.pwh__como code{font-family:var(--pwh-mono);font-size:.85em;background:var(--pwh-campo);padding:1px 6px;border-radius:4px;color:var(--pwh-texto)}

/* CTA de cierre */
.pwh__cta{margin-top:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--pwh-acento) 16%,var(--pwh-fondo)),var(--pwh-fondo) 70%);border:1px solid color-mix(in srgb,var(--pwh-acento) 40%,var(--pwh-linea));border-radius:var(--pwh-radio);padding:22px}
@media(min-width:768px){.pwh__cta{padding:28px 32px}}
.pwh__eyebrow{margin:0 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pwh-acento)}
.pwh__cta-titulo{margin:0 0 8px;font-size:1.3rem;line-height:1.25;color:var(--pwh-texto)}
.pwh__cta-texto{margin:0 0 16px;color:var(--pwh-suave);max-width:62ch}
.pwh__cta-acciones{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
.pwh__link{color:var(--pwh-texto);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.pwh__link:hover{color:var(--pwh-acento)}

/* crédito + insertar */
.pwh__credito{margin:12px 2px 0;font-size:.8rem;color:var(--pwh-suave)}
.pwh__credito a{color:inherit;text-decoration:underline}
.pwh__embed-btn{background:none;border:0;padding:0;font:inherit;color:var(--pwh-acento);text-decoration:underline;cursor:pointer}
.pwh__embed{margin-top:12px;background:var(--pwh-panel);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio-s);padding:14px;display:grid;gap:10px}
.pwh__code{width:100%;font-family:var(--pwh-mono);font-size:.8rem;background:var(--pwh-campo);color:var(--pwh-texto);border:1px solid var(--pwh-linea);border-radius:8px;padding:10px}

/* toast */
.pwh{position:relative}
.pwh__toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--pwh-texto);color:var(--pwh-fondo);padding:10px 18px;border-radius:999px;font-weight:600;font-size:.9rem;transition:.2s;z-index:99999}
.pwh__toast.is-on{opacity:1;transform:translate(-50%,0)}

/* listado [pw_herramientas] */
.pwh-lista__grilla{list-style:none;margin:0;padding:0;display:grid;gap:14px}
@media(min-width:640px){.pwh-lista__grilla{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.pwh-lista__grilla{grid-template-columns:repeat(3,1fr)}}
.pwh-lista__item a{display:flex;flex-direction:column;gap:6px;height:100%;padding:18px;background:var(--pwh-fondo);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio);color:var(--pwh-texto);text-decoration:none;transition:border-color .15s,transform .15s}
.pwh-lista__item a:hover{border-color:var(--pwh-acento);transform:translateY(-2px)}
.pwh-lista__item span{color:var(--pwh-suave);font-size:.9rem}
.pwh-lista__cat{font-size:.72rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pwh-acento)!important}

@media (prefers-reduced-motion:reduce){.pwh *{transition:none!important}}
.pwh__cta-extra{margin:16px 0 0;font-size:.88rem;color:var(--pwh-suave)}
.pwh__cta-extra a{color:var(--pwh-acento);font-weight:600;text-decoration:none}
.pwh__cta-extra a:hover{text-decoration:underline}
/* QR y vistas previas */
.pwh__qr{display:grid;place-items:center;background:#fff;border-radius:var(--pwh-radio-s);padding:14px;width:100%;max-width:280px;margin:0 auto}
.pwh__qr svg,.pwh__qr canvas,.pwh__qr img{display:block;width:100%;height:auto}
.pwh__preview{background:var(--pwh-campo);border:1px dashed var(--pwh-linea);border-radius:var(--pwh-radio-s);padding:12px;display:grid;place-items:center;min-height:160px;overflow:hidden}
.pwh__preview canvas,.pwh__preview img{max-width:100%;height:auto;display:block}
.pwh__drop{display:grid;place-items:center;text-align:center;gap:6px;border:2px dashed var(--pwh-linea);border-radius:var(--pwh-radio);padding:28px 16px;cursor:pointer;color:var(--pwh-suave);transition:border-color .15s,background .15s}
.pwh__drop:hover,.pwh__drop.is-over{border-color:var(--pwh-acento);background:color-mix(in srgb,var(--pwh-acento) 6%,transparent)}
.pwh__drop strong{color:var(--pwh-texto)}
.pwh__lista{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pwh__item{display:flex;gap:10px;align-items:center;justify-content:space-between;background:var(--pwh-campo);border:1px solid var(--pwh-linea);border-radius:var(--pwh-radio-s);padding:10px 12px}
.pwh__swatch{width:100%;aspect-ratio:1;border-radius:var(--pwh-radio-s);border:1px solid var(--pwh-linea)}

/* bloque de datos impreso en el servidor ([pw_herramienta_datos]) */
.pwh-datos{display:grid;gap:16px}
.pwh-datos .pwh__titulo{margin:6px 0 0}
.pwh-datos .pwh__nota a{color:var(--pwh-acento)}
.pwh-datos__fichas{grid-template-columns:repeat(2,1fr)}
@media(min-width:768px){.pwh-datos__fichas{grid-template-columns:repeat(4,1fr)}.pwh-datos__fichas .pwh__kpi--grande{grid-column:auto}}
.pwh-datos .pwh__kpi .pwh__ayuda{display:block;margin-top:4px}
@media(max-width:560px){.pwh-datos__fichas{grid-template-columns:minmax(0,1fr)}.pwh-datos__fichas .pwh__kpi:not(.pwh__kpi--grande){display:block}.pwh-datos__fichas .pwh__kpi:not(.pwh__kpi--grande) .pwh__kpi-valor{margin-top:2px;text-align:left;white-space:normal;overflow-wrap:anywhere}}
.pwh-datos__chips{display:flex;flex-wrap:wrap;gap:6px}
.pwh-datos__chips span{font-family:var(--pwh-mono);font-size:.82rem;padding:4px 10px;border:1px solid var(--pwh-linea);border-radius:999px;color:var(--pwh-texto)}
.pwh-datos__sw{display:inline-block;width:14px;height:14px;border-radius:4px;vertical-align:-2px;margin-right:6px;border:1px solid rgba(255,255,255,.25)}
