/* pldv2.css — estilos de la interfaz conectada.
 * Viven en archivo aparte porque la CSP del paquete (style-src 'self')
 * prohíbe estilos inline, y esa decisión se respeta en lugar de aflojarla. */

/* --- pantalla de entrada --- */
.tapa{position:fixed;inset:0;background:var(--canvas);display:none;place-items:center;z-index:60;padding:24px}
.tapa.ver{display:grid}
.tapa .caja{width:100%;max-width:400px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:30px}
.tapa .brand-caja{display:flex;justify-content:center;margin-bottom:10px}
.tapa img{max-width:190px}
.tapa h1{font-size:20px;color:var(--navy);margin:8px 0 4px}
.tapa p.sub{color:var(--muted);font-size:13px;margin:0 0 18px}
.tapa .aviso-mal{display:none;background:#fdeaea;color:var(--danger);border-radius:8px;padding:10px 12px;font-size:13px;margin-bottom:12px}
.tapa .aviso-mal.ver{display:block}
.tapa .field{margin-bottom:12px}
.tapa .button{width:100%}
.oculto{display:none!important}
#tapaPie{margin-top:16px}
.account a{color:#9fd9d4}

/* --- aviso flotante (lo posiciona app.js por CSSOM; aquí la base) --- */
#avisoGlobal{position:fixed;top:14px;right:14px;z-index:80;max-width:420px;padding:12px 16px;border-radius:9px;font-size:13.5px;box-shadow:0 6px 22px rgba(0,0,0,.14);display:none}
#avisoGlobal.bien{background:#e7f6ee;color:var(--green)}
#avisoGlobal.mal{background:#fdeaea;color:var(--danger)}
#avisoGlobal.ver{display:block}

/* --- utilería que sustituye a los estilos inline --- */
.mt6{margin-top:6px}.mt8{margin-top:8px}.mt10{margin-top:10px}
.mt12{margin-top:12px}.mt14{margin-top:14px}.mt16{margin-top:16px}
.mt18{margin-top:18px}.mb16{margin-bottom:16px}
.campo-btn{align-self:end}
.ancho{grid-column:1/-1}
.nota{font-size:12px;color:var(--muted)}
.nota13{font-size:13px;color:var(--muted)}
.nota11{font-size:11px;color:var(--muted)}
.f12{font-size:12px}
.muted{color:var(--muted)}
.verde{color:var(--green)}
.rojo{color:var(--danger)}
.nowrap{white-space:nowrap}
.wrapc{white-space:normal}
.mx420{max-width:420px}
.nodeco{text-decoration:none}
.acciones{display:flex;gap:10px;flex-wrap:wrap}
.callout.ambar{border-left-color:var(--amber);background:#fff5df;color:#7a5200}
.clave-grande{font-size:22px;letter-spacing:1px;user-select:all}
